3 ms·
The main technique that I choose is to build web applications using only web technologies - by that I mean tech that is included within the concept of "World Wi
by g105b 8y ago
The main technique that I choose is to build web applications using only web technologies - by that I mean tech that is included within the concept of "World Wide Web" and "HTTP" (links, pages, forms, buttons, etc.), rather than building using immature/unproven technologies such as single-page-application frameworks or other client-side rendered tech.
The reason I find it important enough to write in this reply is that there are so many web developers (actually, moreso web designers) that are absolutely sold on the concept of JavaScript running the whole stack, and I have found it very difficult to tame the development decisions of recent projects where working with others is a requirement.
There are certainly concepts that client-side frameworks have made popular that are much better for the developer and end user, but I have yet to see a valid argument for not rendering that page on the server and enhancing its functionality, where needed, using CSS and JavaScript. I don't want to bet the success of my product on an upcoming hot framework that overrides browser navigation/scrolling, as oftentimes when a client-side framework becomes very popular, it starts finding the same problems that the World Wide Web solved twenty years ago.
- Dowwie 8y agoWhat libraries/techniques/tools are you using for this traditional style web development?
- g105b 8y agoI like to adhere to Uncle Bob's _Clean Architecture_. Any server-side language will allow this; I choose PHP 7 and am currently working on an open source toolkit that brings modern techniques to PHP. It allows me to code using standard techniques with little-to-no library dependency. For example, it's a great idea to code the views of the web apps in plain HTML, and to make HTML dynamic, use the well-understood Document Object Model, rather than introducing something {{LIKE_THIS}} which instantly makes your application bound to the platform. You can see this in action in part of the toolkit here: https://Github.com/PhpGt/DomTemplate https://Github.com/PhpGt/DomTemplate Using the DOM in this way doesn't impose anything on the actual HTML, so in theory the views of the app can be switched out to use another framework/language/platform without too much effort. While documenting the toolkit, I have tried to apply Uncle Bob's _Clean Architecture_ to the web, coming up with this description: https://github.com/PhpGt/WebEngine/wiki/Application-architecture https://github.com/PhpGt/WebEngine/wiki/Application-architec... On the above page I've described how I apply the techniques within the toolkit. Feedback appreciated.