3 ms·
The Pragmatic Programmer: http://pragprog.com/titles/tpp/the-pragmatic-programmer http://pragprog.com/titles/tpp/the-pragmatic-programmer Code Complete: http:/
by dboyd 16y ago
The Pragmatic Programmer: http://pragprog.com/titles/tpp/the-pragmatic-programmer http://pragprog.com/titles/tpp/the-pragmatic-programmer
Code Complete: http://cc2e.com/ http://cc2e.com/
Introduction to Algorithms (google that one, it's hard to find a good link)
Domain Driven Design: http://domaindrivendesign.org/books/evans_2003 http://domaindrivendesign.org/books/evans_2003
Design Patterns: Elements of Reusable Object-Oriented Software
The term "web development" doesn't mean much. There is web design. There is application development. When the two mix, there is web application development. Any kind of application development is hard, and simply knowing a language or two isn't going to make you a good application developer any more than knowing english will make you Stephen King. (IMO)
- angrycoder 16y agoThose books are great, but they only start to make sense after you've been doing development for a few years. Its very hard to get any kind of 'buy in' with those when you are just getting started. I disagree that application development and web development are similar. When you build web apps like 'real' applications, you end up with all those heavy java frameworks. And god help your sanity if you ever been subjected to the code of a desktop application written by a web developer.
- StudyAnimal 16y agoI dunno about that. The bulk of an app should be business logic, or you are just plumbing / churning our boiler plate. Behind that theres some infrastructure, or connections to external systems, websites, file IO, hardware, databases. All that is not going to look much different, if you are doing it right. The only difference between a web app and a desktop app, is the presentation layer which should be as thin as possible, and whatever is hosting it, i.e. a framework, an executable. In fact most of the real apps I have been working on lately aren't one or the other, they are a mix. Basically a core of domain logic, with thin patches of external interface exposing it. A web page here, a web service there, a desktop app over there, a server here. And the line between is getting fuzzier. I hear some places are standardizing on technologies like Flex that can be either web apps or desktop apps depending on configuration. If I understand you correctly you are implying that web apps don't need to have as clean a design as desktop apps. I am not sure if that is what you mean, but if it is, then you are going have the same trouble with maintenance as a product matures if you ignore e.g. SOLID principles, separation of concerns etc, whether it is a desktop or web app. And you don't need any "heavy java frameworks" either. If anything web frameworks like rails encourage a cleaner design (ie via MVC) than typical desktop tools like what C# developers might use to make an app.
- tianyicui 16y agoThe good link for Introduction to Algorithms: http://mitpress.mit.edu/algorithms/ http://mitpress.mit.edu/algorithms/