A while back, I posted a list of ASP. Interview Questions. Conventional wisdom was split, with an on half the folks saying I was nuts and that it is a list of trivia. The others said basically "Ya, those is good. The I ' d probably has a few up. To me, that's the right response.
Certainly I wasn ' t trying to boil all of the. NET software development down to a few simple "trivia" questions. However, I was trying to get folks thinking. I believe that really good ASP. (and for that matter, WinForms) are a little [read:lot] more than just draging a contro L onto a designer and hoping for the best. A good race driver knows his car-what it can does and what it can ' t.
So, here's another list...a greatly expanded list, for your consumption (with attribution). I wrote this on a plane last week on the the-the-Boise to Portland. I tried to take into consideration the concerns, that my lists contain unreasonable trivia. I tried to make a list that is organized by section. If you've never down ASP, you obviously won ' t know all the ASP. If you're a indenpendant consultant, you may never come upon some of these concepts. However, ever question here have come up and than once in the last 4 years of my time at Corillian. So, knowing groking These questions could not make a good or bad developer, but it would save you time when prob Lems arise.
What great. NET developers ought to Know
Everyone who writes code
- Describe the difference between a Thread and a Process?
- What's a Windows Service and how does it lifecycle differ from a ' standard ' EXE?
- What's the maximum amount of memory any single process on Windows can address? Is this different than the maximum virtual memory for the system? How would this affect a system design?
- What's the difference between an EXE and a DLL?
- What is strong-typing versus weak-typing? Which is preferred? Why?
- Corillian ' s product is a "Component Container." Name at least 3 component containers this ship now with the Windows Server Family.
- What is a PID? How was it useful when troubleshooting a system?
- How many processes can listen to a single TCP/IP port?
- What is the GAC? What problem does it solve?
Mid-level. NET Developer
- Describe the difference between interface-oriented, object-oriented and aspect-oriented programming.
- Describe What's Interface is and how it's different from a Class.
- What is Reflection?
- What is the difference between XML Web Services using ASMX and. NET Remoting using SOAP?
- Is the type system represented by XmlSchema and the CLS isomorphic?
- Conceptually, what's the difference between early-binding and late-binding?
- is using Assembly.Load a static reference or dynamic reference?
- When would using Assembly.LoadFrom or assembly.loadfile is appropriate?
- What's an asssembly qualified Name? Is it a filename? How is it different?
- Is this valid? Assembly.Load ("Foo.dll");
- How was a strongly-named assembly different from one of that isn ' t strongly-named?
- Can datetimes be null?
- What is the JIT? What is NGEN? What is limitations and benefits of each?
- How does the generational garbage collector in the. NET CLR Manage object lifetime? What is non-deterministic finalization?
- What is the difference between Finalize () and Dispose ()?
- What is the using () pattern useful? What is IDisposable? How does is it support deterministic finalization?
- What does this useful command line do? tasklist/m "mscor*"
- What is the difference between In-proc and Out-of-proc?
- What technology enables OUT-OF-PROC communication in. NET?
- When do you ' re running a component within ASP., what's it running within on Windows XP? Windows 2000? Windows 2003?
Senior developers/architects
- What's wrong with a line like this? DateTime.Parse (myString);
- What is PDBs? Where must they is located for debugging to work?
- What is cyclomatic complexity and are it important?
- Write a standard lock () plus double check for create a critical section around a variable access.
- What is FullTrust? Does GAC ' Ed assemblies have FullTrust?
- What benefit does your code receive if you decorate it with attributes demanding specific Security permissions?
- What's does this? gacutil/l | find/i "Corillian"
- What's does this? Sn-t Foo.dll
- What ports must is open for DCOM over a firewall? What is the purpose of Port 135?
- Contrast OOP and SOA. What is tenets of each?
- How does the XmlSerializer work? What ACL permissions does a process using it require?
- Why are catch (Exception) almost always a bad idea?
- What is the difference between Debug.Write and trace.write? When should all be used?
- What is the difference between a Debug and Release build? Is there a significant speed difference? Why or?
- Does jitting occur per-assembly or Per-method? How does this affect the working set?
- Contrast the use of a abstract base class against an interface?
- What is the difference between a.equals (b) and a = = B?
- In the context of a comparison, what is object identity versus object equivalence?
- How would one does a deep copy in. NET?
- Explain current thinking around iclonable.
- What is boxing?
- is string a value type or a reference type?
- What's the significance of the "propertyspecified" pattern used by the XmlSerializer? What problem does it attempt to solve?
- Why is out parameters a bad idea in. NET? is they?
- Can attributes is placed on specific parameters to a method? Why are this useful?
C # Component Developers
- juxtapose The use of the override with new. What is shadowing?
- Explain The use of virtual, sealed, override, and abstract.
- Explain the importance and use of all component of this string:Foo.Bar, version=2.0.205.0, Culture=neutral, Publicke ytoken=593777ae2d274679d
- Explain The differences between public, protected, private and internal.
- What benefit does you get from using a Primary Interop Assembly (PIA)?
- by what mechanism does NUnit know what methods to test?
- What is the difference between:catch (Exception e) {throw e;} and catch (Exception e) {throw;}
- What is the difference between typeof (Foo) and Myfoo.gettype ()?
- Explain What's happening in the first Constructor:public class c{public C (String a): this () {;}, public C () {;}} H OW is this construct useful?
- what is this ? Can This is used within a static method?
ASP (UI) developers
- Describe how a browser-based Form POST becomes a server-side event like Button1_onclick.
- What is a PostBack?
- What is ViewState? How is it encoded? Is it encrypted? Who uses ViewState?
- What are the <machinekey> element and what are ASP. Technologies are it used for?
- What three Session state providers is available in ASP. 1.1? What is the pros and cons of each?
- What is Web gardening? How would using it affect a design?
- Given one ASP. Application, how many application objects does it has a single proc box? A dual? A dual with Web gardening enabled? How would this affect a design?
- is threads reused in ASP. Between Reqeusts? Does every HttpRequest get its own thread? Should you use the Thread Local storage with ASP.
- is the [threadstatic] attribute useful in ASP. Is there side effects? Good or bad?
- Give An example of how using a HttpHandler could simplify an existing design the that serves Check Images from an. aspx page.
- What kinds of events can a HttpModule subscribe to? What influence can they has on a implementation? What can is done without recompiling the. asp. Application?
- Describe ways to present a arbitrary endpoint (URL) and route requests to, endpoint to ASP.
- Explain how cookie work. Give An example of cookies abuse.
- Explain the importance of Httprequest.validateinput ()?
- What kind of the data is passed via HTTP Headers?
- Juxtapose the HTTP verbs GET and POST. What is HEAD?
- Name and describe at least a half dozen HTTP Status Codes and what they express to the requesting client.
- How does does if-not-modified-since work? How can it is programmatically implemented with ASP.
Explain < @OutputCache%> and the usage of VaryByParam, VaryByHeader.
- How does does VaryByCustom work?
- How would one implement ASP. HTML output caching, caching outgoing versions of pages generated via all values of q= exc EPT where q=5 (as in http://localhost/page.aspx?q=5)?
Developers using XML
- What is the purpose of XML namespaces?
- When was the DOM appropriate for use? When was it not? Is there size limitations?
- What is the WS-I Basic profile and why is it important?
- Write a small XML document that uses a default namespace and a qualified (prefixed) namespace. Include elements from both namespace.
- What is the one fundamental difference between Elements and Attributes?
- What is the difference between well-formed XML and Valid XML?
- How would validate XML using. NET?
- Why are this almost always a bad idea? When was it a good idea? Myxmldocument.selectnodes ("//mynode");
- Describe the difference between Pull-style parsers (XmlReader) and Eventing-readers (Sax)
- What is the difference between XPathDocument and XmlDocument? Describe situations where one should be used over the other.
- What is the difference between a xml "Fragment" and an XML "Document."
- What does it meant to say "the canonical" form of XML?
- Why are the XML Infoset specification different from the XML DOM? What does the infoset attempt to solve?
- Contrast DTDs versus XSDs. What is their similarities and differences? Which is preferred and why?
- Does System.Xml support DTDs? How?
- Can any XML Schema is represented as an object graph? Vice versa?
What great. NET developers ought to Know (more. NET interview Questions)