11/11/2020
What is Backend Development ?
Backend Development áááŻááŹááŹáá˛?
Application áá˝áą Web Service áá˝áąáááşááŽá¸áááşáááŻáááş áĄáááŻááşá¸áážá
áşáááŻááşá¸ áá˝á˛ááźáŹá¸ááŹá¸ááŤáááşá Frontend áá˛áˇ Backend ááŤá Fronted áááąáŹáˇáážááşá¸ááŤáááş ááťá˝ááşááąáŹáşáááŻáˇ ááźááşááąááá˛áˇ áĄáááŻááşá¸áá˛ááźá
áşááŤáááşáColor, Animations, Layout áá˛áˇ áĄááźáŹá¸ááąáŹ stuff áá˝áąááᯠáááááá˛áˇ áĄáá˝áąáˇáĄááźáŻáśááąáŤáşáá°áááşááźáŽá¸ Application áá˛áˇ Website áá˝áąáááşááŽá¸ááŹá¸áá˛áˇ áááşá¸áááŹáᏠFrontend ááŤáá˛á ááąááŻááťáĄáŹá¸ááźááˇáş Frontend ááᯠUser Interface (UI) áááŻáˇááąáŤáşááŤáááşáBackend áááŻááŹáááąáŹáˇ ááťá˝ááşááąáŹáşáááŻáˇ áááźááşááá˛áˇ áĄáááŻááşá¸ááŤá Application áá˛áˇ Website áá˝áąáá˛áˇ ááąáŹááşáá˝ááşáááą áĄááŻááşááŻááş ááąááŹáááŻááąáŤáşááŤáááşá Backend áážáŹááŤáááşááŹáá˝áąáááąáŹáˇ Server á Database áĄááźááş áááźáŹá¸áĄááŹáá˝áą áĄááťáŹá¸ááźáŽá¸áážáááŤááąá¸áááşá
áĄááŻááąá¸ááŹá¸áá˛áˇ Content áážáŹáááŻáááş Fonts,Colours,Design áĄá
áážáááŹáá˝áą ááŤááŤáááşá áĄá˛áˇááŤáá˝áąá Blog áá˛áážáŹááŤáá˛áˇ Frontend áá˛áˇ áĄá
áááşáĄáááŻááşá¸áá˝áąááŤá Web Page áá˝áąáá˛áˇ Article áá˛áážáŹ áážááá˛áˇ Content áá˝áąááᯠServer áá˛áˇ Database áá˝áąááᯠáĄááŻáśá¸ááźáŻááźáŽá¸ Data áá˝áąááážáááŻááşááąáŹááşááá˛áˇ áĄá
áááşáĄáááŻááşá¸á ááąáŹáˇ Backend ááźá
áşááŤáááşá
What Does a Backend Developer Do For Backend Development ?
Backend Developer áá˝áąááŹáá˝áąááŻááşááąáŹááşááźáᲠáááŻáááş ááŤáá˝áąááŻááşááźááŤáááşá
Writing Server-Side Code.
Writing code to interact with a database.
Ensuring that the server-side code is secure and free of vulnerabilities.
Ensuring that the server-side code is optimised enough to handle large volumes of traffic.
Deploying the code to online
Backend Development áá˛áˇ Step ááťáŹá¸
Backend Development ááᯠá
ááźáŽá¸ááąáˇááŹáááşáááŻáááş Frontend Development ááźá
áşáá˛áˇ HTML/CSSááᯠáĄááźáąááś ááááŹá¸áĄáąáŹááş ááąáˇááŹááŹá¸áááˇáşááŤáááşá
Step 1 - Learn a Language
Backend Development áĄáá˝ááş áááş Language áááŻááŻáśá¸ááá˛ááá˝áąá¸ááťááş á
áᏠLanguage áá˝áąáĄááťáŹá¸ááźáŽá¸ áážáááŤáááşá áĄá˛ááŤáá˝áąáááąáŹáˇ PHP, Nodejs, Python, Rail á
áááźááˇáşááąáŤáˇááĄááŻááž á
ááąáˇááŹáá˛áˇ áá°áá˝áąáááŻááąáŹáˇ Scripting Language áááŻáá˝áąá¸ááŤáááŻáˇ áĄááźáśááąá¸ááťááşááŤáááşáááŹááźáąáŹááˇáşáá˛áááŻááąáŹáˇ áá°áááŻáˇáážáŹ Demand áá˝áąáĄááťáŹá¸ááźáŽá¸áážááááŻáˇááŤáááąáˇááŹáááŹáááşá¸ áááŻááźáŽá¸ááąáŹáˇ ááźááşáááşááŤáááşá ááťá˝ááşááąáŹáşáááŻáˇáážáŹ Frontend Knowledge ááááźáŽá¸ááŹá¸áááŻáááşááąáŹáˇ Nodejs áááŻááąáˇááŹááŤáNodejs áážáŹ áĄááŻááşáĄáá˝ááşááźáŽá¸ááŹá¸áá˛áˇ Market áážáááŤáááşá
Step 2 - Learn Package Manager
Language áá˝áąá¸ááźáŽá¸ááźáŽ áááŻáááşááąáŹáˇ Package Manager áááŻáááşá¸ ááąáˇááŹáááŻáˇ áááŻáĄááşááŤáááşá Package Manager á ááťá˝ááşááąáŹáşáááŻáˇáá˛áˇ Applications áá˝áąáážáŹ áĄááŻáśá¸áááşáá˛áˇ External Libraries áá˝áąáĄááŻáśá¸ááźáŻ áááŻáˇááĄáąáŹááşáá°ááŽááąá¸ááŤáááşá ááťá˝ááşááąáŹáşáááŻáˇ ááąá¸ááŹá¸áá˛áˇ Libraries áá˝áąáááŻáááşá¸ áááźáŹá¸áá°áá˝áą áá°ááŻáśá¸áááŻáˇ ááĄáąáŹááş ááźááˇáşááąááąá¸ááŤáááşáááťá˝ááşááąáŹáşáááŻáˇá PHP Language áááŻáá˝áąá¸ááťááşááŹá¸áááşáááŻáááş Composer áááŻáá˛áˇ Package Manager áááŻááŻáśá¸áááŤáááşá Nodejs áááŻáááş NPM áá˛áˇ Yarn á Python áááŻáááş Pip á Ruby áááŻáááşááąáŹáˇ Ruby Gems áááŻáˇáá˛ááźá
áşááŤáááşá
Step 3 - Security
Security áĄáá˝ááş ááťá˝ááşááąáŹáşáááŻáˇ áá˝áąá¸ááťááşááŹá¸áá˛áˇ Language ááąáŤáşáá°áááşááźáŽá¸ OWASP guidelines áá˝áąááᯠááąáˇááŹáááŤáááşá Language áá˛áážáŹ ááá°ááŽáá˛áˇ security issues áá˝áąááᯠáááşáááŻáážáąáŹááşáážáŹá¸ááááşáááŻáᏠááááŹá¸áááŤáááşá
Step 4 - Learn About Testing
ááá°ááŽáá˛áˇ Testing Type áá˝áąáĄááťáŹá¸ááźáŽá¸áážáááŤáááşá áá˝áąá¸ááťááşáááŻááşáá˛áˇ Test Type áá˛áˇ áááşáá˝ááşááťááşááᯠááŹá¸áááşááŹá¸áááş áááŻááąáŹááşá¸ááŤáááşá áĄááŻáĄáá˝ááşááąáŹáˇ Unit Testing áá˛áˇ ááťá˝ááşááąáŹáşáááŻáˇ Application áážáŹ tests áá˝áąáááşááᯠááąáŤááşá¸á
ááşááźáŽá¸ áááˇáşááááş áááŻááŹááᯠááááŹá¸áááŤáááşá mocks, stubs áááŻáˇááᯠááá°ááŽáá˛áˇ testing terminologies áá˝áąááᯠááąáˇááŹáááŤáááşá
Step 5 - Learn About the Relational Database
Server áááŻáážááąáŹáˇ Database áĄááźáąáŹááşá¸ ááąáˇááŹáááŻáˇ áááŻááŹááąáŤáˇá Database áá˛áážáŹ áááááˇáşáá˛áˇ áĄááťááşáá˝áąáááąáŹáˇ key, indexes, normalization, type áááŻáˇáá˛ááźá
áşááŤáááşá áá˝áąá¸ááťááşáááˇáşáá˛áˇ Database áá˝áąáááąáŹáˇ MySQL, Maria DB, PostgreSQL áááŻáˇááŤáá˛á
Step 6 - Learn a Framework
Language ááąáŤáşáá°áááşááźáŽá¸ Framewok áá˝áąá¸ááťááşáááŤáááşá Framework áĄááąáá˛áˇáááąáŹáˇ áĄááŻáśá¸ááźáŻááťááşáááşá¸ááááşá áĄááŻáśá¸áááźáŻááťááşáááşá¸ áááŤáááş á option ááŤá Framework ááŻáśá¸ááá˛áˇ áĄáŹá¸ááŹááťááşáááąáŹáˇ development áááŻáááŻááźááşá
áąááŤáááşá PHP áĄáá˝ááş áĄáááşááźáąá
áąáá˛áˇ Framework áá˝áąáááąáŹáˇ Laravel, Symfony, Codeigniter, Cake PHP áááŻáˇáᲠááźá
áşááŤáááşá Nodejs áááŻáá˝áąá¸ááťááşááŹá¸áááş áááŻáááşááąáŹáˇ Express Framework áááŻááŻáśá¸ááŤááᯠáĄááźáśááźáŻáááŻááŤáááşá
Step 7 - Learn a NoSQL Database
Scale ááźá
áşáá˛áˇ Database áááŻáááŻááťááşáááşáááŻáááş NoSQL Database áááŻááŻáśá¸ááŤá Relational Database áá˛áˇ NoSQL áá˝áąáá˛áˇ áĄáŹá¸ááŹááťááş áĄáŹá¸áááşá¸ááťááşáá˝áąááᯠáĄáááşááąáˇááŹáááˇáşááŤáááşá
ááąáˇááŹááá˛áˇ Database áá˝áąáááąáŹáˇ Mongo DB, Cassandra, Rethink DB áá˛áˇ Couchbase áááŻáˇáá˛ááźá
áşááŤáááşá ááťá˝ááşááąáŹáşáááąáŹáˇ Mongo DB áááŻáá˝áąá¸ááťááşááŤáááşá
Step 8 - Learn RESTful APIs
Backend Development áĄáá˝ááşááážááááźá
áşáááŻáĄááşáá˛áˇ áĄáááŻááşá¸ááŤáFrontend áá˛áˇ Server (Backend) ááᯠááťáááşáááşáá˛áˇ REST áááşá¸áááŹááŤá ááŽáĄáááŻááşá¸áážáŹááąáŹáˇ ááááŹá¸áááˇáşáá˛áˇ áĄááťááşáá˝áąá HTTP áá˛áˇJson áᲠááŻááşááąáŹááşááťááşáá˝áąááŤá
Step 9 - Learn About Different Auth Method
ááá°ááŽáá˛áˇ Authentication áá˛áˇ Authorization Methodologies áĄááźáąáŹááşá¸ááąáˇááŹáááˇáşááŤáááşá
ááááŹá¸áááˇáşáá˛áˇ Method áá˝áąáááąáŹáˇ
OAuth - Open Authentication
Basic Authentication
Token Authentication
JWT - Json Web Tokens
Open ID áááŻáˇáá˛ááźá
áşááŤáááşá
Step 10 - Learn How to use Web Socket
ááťá˝ááşááąáŹáşáááŻáˇ ááŻááşááąáŹááşáá˛áˇ Application á Real Time áááŻáááşááąáŹáˇ Web Socket áááźá
áşáááąááŻáśá¸áááŤáááşá
Conclusion
ááąáŹááşááŻáśá¸áĄááąáá˛áˇ áá
áşáááˇáşááźááşá¸á
áŽáááŻááş Pratice ááťáŹá¸ááťáŹá¸ááŻááşááźáŽá¸ ááąáˇááŹáááˇáşááŤáááşááᎠArticle áááŻáááşááźáŽá¸ááąáŹáˇ Backend Development áááŻááŹá¸áááşáááşáááŻáˇ ááťážáąáŹáşáááˇáşááŤáááşáá
ááąáˇááŹááąáá˛áˇ áá°áá˝áąáĄáá˝ááş áá
áşááŻáᯠáááááˇáşáááşáááŻáˇ áááşááááŤáááşá ááťáąá¸áá°á¸áááşááŤáááşá