Back-end хөгжүүлэлт гэдэг нь вэбсайтууд болон программуудын ар талд буюу сервер талд ажилдаг логик хэсгийг хэлнэ. Үүнд мэдээллийн бааз, сервер, программыг бүрдүүлэхэд шаардлагатай бүх кодыг багтаана. Өгөгдлийн сангийн хөгжүүлэлт, API интеграциас эхлээд software-н хамгийн чухал хэсгийн хөгжүүлэлтүүд багтдаг гэхэд болно.
“ Ялангуяа сүүлийн жилүүдэд micro service архитектурт тулгуурлаж маш олон системүүдийг хөгжүүлэх болсноор backend талын хөгжүүлэлт маш чухал болж ирж байна.
Back-End tools & technology товчхон дурдахад:
– Servers
– Databases
– Middleware
– Programming languages & frameworks
– APIs
1. Servers:
Backend хөгжүүлэлт хийж л байгаа бол түүний салшгүй нэг хэсэг бол сервер юм. Өөрийн хөгжүүлсэн системээ ажиллуулахын тулд ажлын орчныг нь бэлдэх шаардлагатай тулгарна. Тиймээс сервер тохируулахаас эхлээд үндсэн application server-үүдээ бэлтгэж сурах чадварыг бага ч гэсэн шаарддаг.
2. Databases:
Backend хөгжүүлэлтийн ихэнх хувийг өгөгдлийн сантай холбогдож ажиллах хөгжүүлэлтүүд эзэлдэг. Өгөгдлийн сан нь таны вэбсайт эсвэл программын хэрэглэгчид тэдэнтэй харилцах үед харуулж буй, засварлаж буй, авч буй өгөгдлийг агуулж байдаг. Тухайн өгөгдлийн сантай холбогдож ажиллах бүх зүйлс backend дээр хөгжүүлэгддэг учир та өгөгдлийн сангийн яггүй мэдлэгтэй байх шаардлагатай. Өгөгдлийн сангаа зөв зохион байгуулахаас эхлээд, ямар өгөгдлийн санг ашиглах, хэрхэн зөв зохистой ашиглах зэрэг мэдлэг шаардана.
3. Middleware:
Middleware нь программын урд талыг арын төгсгөлтэй холбосон сервер дээрх аливаа программыг хэлнэ. Энэ нь хүсэлт, хариу гэх мэт аливаа харилцаа холбоог таны программ болон таны сервер/мэдээллийн баазын хооронд нааш цааш дамжуулдаг. Зарим нэг сервер/мэдээллийн бааз дээр хийхэд хүндрэлтэй хэсгүүдийн logic-г мөн хийдэг. Сүүлийн жилүүдэд программ хөгжүүлэлтийн архитектур өөрчлөгдөж байгаагийн нэг илрэл нь middleware-н хөгжил юм. Жишээ нь: программын хөгжүүлэхдээ олон жижиг хэсгүүд болгож хөгжүүлэх хандлагатай болсон бөгөөд эдгээр нь бие биеэс үл хамаарч өөрсдийн гүйцэтгэх ажлаа хийдэг жижиг хэсгүүдийг бий болгодог. Эдгээр нь ямар нэгэн өөр бусадтай integration хийх, ингэхдээ тодорхой logic үйлдлийг хийх зэрэг шаардлагууд тулгардаг. Нөгөө талаас эдгээрийг бүгдийг нь нэгтгэх хооронд нь холбож өгөх, удирдах, зарим чадахгүй зүйлсийг нь хийж өгөх шаардлагууд тулгарна. Энэ хэрэгцээнд middleware хөгжүүлэлт чухал үүргийг гүйцэтгэдэг. Мөн cloud дээрх программууд болон дотоод программуудыг хооронд нь холбож өгөх боломжуудыг олгоно.
Middleware (сервер талын программ хангамж) нь client-server холболтыг хялбарчлах, программ (ууд) ба сүлжээний хооронд давхарга үүсгэдэг: сервер, мэдээллийн сан, үйлдлийн систем гэх мэт. Middleware нь танилцуулгын давхарга эсвэл бизнесийн давхарга байхаас үл хамааран янз бүрийн давхаргад зохион байгуулагдсан олон давхаргатай байж болно. Өнөө цагт бол middleware системүүд cloud дээр байрших явдал элбэг болсон. Бүгдийг нь нийлүүлээд cloud technology-ч гэж хэлдэг.
4. Programming languages & frameworks
Мэдээж ямар систем, ямар хэрэгцээ шаардлагаар хөгжүүлэх гэж буйгаас хамаарч backend хөгжүүлэлт дээр ашиглах програмчлалын хэл болон цар хүрээгээ тодорхойлдог. (манайханд ажиглагддаг нэг зүйл бол бүх юмаа нэг чаддаг юмаараа хийх гээд муйхарлаад байдаг хандлага харагддаг)
Ямар програмчлалын хэл сонгосноос хамаарч файлын хэмжээ, гүйцэтгэл, нийцтэй байдал, хэдэн мөр код шаардагдах, програмчлалын хэв зэргээрээ ялгаатай байх болно. Ингэснээр аппликешныг ажиллуулахад шаардагдах ачаалах хугацаа, унших чадвар, боловсруулалтын чадварт нөлөөлдөг. Тиймээс архитектурын сонголт маш чухал гэж хэлэх байна. Мэдээж хэрэг энэ сонголтыг хийхэд та болон таны багын ур чадвараас шалтгаалах хүчин зүйлс ихтэй.
Одоогоор backend хөгжүүлэлтэд түгээмэл ашиглагдаж буй хэлнүүд:
– Java
– C# and C++
– .NET
– Perl
– Scala
– Node.js
– Python
Нөгөө талаас эдгээр хэлнүүдийг ашиглахдаа framework-уудыг ашиглах явдал нь маш түгээмэл. Би ч танд framework -уудыг ашиглах нь зөв гэж хэлнэ. Яагаад framework-ууд нь маш олон давуу талуудыг танд авчрах болно.
– Django (for Python)
– Spring framework (for Java)
– Node.js including MeteorJS and ExpressJS (for JavaScript with Node.js)
– Ruby on Rails
– Symfony (for PHP)
– JSF (Java Server Faces)
Та framework-уудыг ашиглахын тулд эхлээд тухайн програмчлалын хэлийг мэддэг байх хэрэгтэйг санаарай.
5. APIs
Одоо үед бол APIs (application programming interfaces) -г ярихгүйгээр backend хөгжүүлэлтийн талаар ярих хэрэггүй болсон цаг. Учир нь API нь ихэнх server-side программ хангамжийн архитектурыг хэрхэн бүтээхэд салшгүй үүрэг гүйцэтгэдэг бөгөөд программ хангамжийг холбогдох, өгөгдөл дамжуулах боломжийг олгодог. Одоогоор SOAP болон REST хоёр төрлийн API архитектур байдаг.