✨ มาดูอีกหนึ่งอาชีพสำคัญสำหรับเราชาวเดฟ ที่น้อง ๆ หรือใครหลายฝันอยากจะเป็น...นั่นคือ Full Stack Developer
.
🌈 แล้วถ้าอยากทำอาชีพนี้ต้องเริ่มยังไง ต้องรู้อะไรบ้าง ? วันนี้แอดจะมาสรุปคร่าว ๆ ให้ดูกัน ซึ่งมันอาจจะมีสกิลที่ต้องใช้น้อยหรือมากกว่านี้ ขึ้นอยู่กับบริษัทนะ...หากพี่ ๆ คนไหนอยากจะเสริมสามารถคอมเมนต์ไว้ได้เลยนะคะ เอาล่ะ อย่ารอช้า...หากพร้อมแล้วไปดูกันเลย !!
.
👉 ก่อนอื่นเรามารู้จักอาชีพนี้กันก่อนว่าคืออะไร…
.
🌟 Full Stack Developer เป็นอาชีพที่สามารถทำได้ทั้ง Front-end และ Back-end นั่นเอง
.
สิ่งสำคัญที่คนอยากทำงานสายนี้ต้องรู้ มีดังนี้ !!
.
📝 พื้นฐานคือสิ่งสำคัญ !
.
สิ่งสำคัญที่ขาดไม่ได้คือพื้นฐาน HTML, CSS และ JavaScript นั่นเอง ไม่ว่าจะเป็น front หรือ back ก็ต้องรู้พื้นฐานนี้กันทั้งนั้น เมื่อพื้นฐานแน่นแล้วเราก็สามารถเลือกใช้ Framework หรือ Tools ต่าง ๆ เช่น React หรือ NodeJS เพื่อต่อยอดสกิลของเราให่เทพมากขึ้นนั่นเอง !
.
✨ ทักษะการออกแบบ
.
ปฏิเสธไม่ได้เลยว่าอีกหนึ่งทักษะที่สำคัญนั่นคือการออกแบบ...ไม่ว่าจะทำเว็บหรือแอปพลิเคชัน สกิลที่ควรมีติดไว้ คือ การใช้งาน AdobeXD และ Figma หลาย ๆ คนอาจจะสงสัยว่างานด้านนี้ Full Stack Dev ต้องทำด้วยหรอ...อันนี้มันก็แล้วแต่บริษัทนะว่าเขามีคนออกแบบแยกรึป่าว แต่แอดว่าสกิลนี้มีติดไว้ก็ดี เพราะชื่อของเราก็บอกอยู่ว่า Full Stack ก็ต้องมีสกิลหลาย ๆ ด้านยังไงล่ะ !!
.
🗂️ ฐานข้อมูล...ก็ห้ามขาด !
.
ไม่ว่าจะเป็น SQL หรือ NoSQL เป็นสิ่งสำคัญมาก ๆ ในการออกแบบแอปพลิเคชันทั้งเว็บและมือถือ เพื่อการเชื่อมต่อกับ Back-end ซึ่งฐานข้อมูลที่คนส่วนใหญ่เขาฮิตกัน...ก็มี MySQL, Oracle, และ MongoDB เป็นต้น
.
เลือก Framework หรือ Stack ที่โดนใจคุณ ❤️
.
เมื่อเราเรียนรู้พื้นฐานที่สำคัญจนครบถ้วนแล้ว ในขั้นถัดไปเราก็จะมาต่อยอดสกิลพื้นฐานนี้ โดยการเลือก Framework หรือ Tools ต่าง ๆ ที่ช่วยให้เราทำงานง่ายมากขึ้น ! ซึ่งในปัจจุบันมีให้ใช้เยอะมาก แต่ที่เขาฮิตและเป็นที่ต้องการของตลาดมาก ๆ คงหนีไม่พ้นเจ้า 3 ตัวนี้ นั่นคือ React, Vue, และ Angular นั่นเอง หรือบางทีอาจจะเรียกรวม ๆ ว่า MERN stack หรือ MEAN stack ส่วนทาง Back-end ก็มี Framework ตัวนึงที่น่าสนใจเช่นกัน คือเจ้า NodeJS, Django จาก Python , ExpressJS หรือจะเป็นทางฝั่ง .net
.
✏️ สกิลอื่น ๆ เพิ่มเติม
.
Git, SSH, Linux Command, Data structures และ Algorithms สกิลเหล่านี้ก็ขาดไม่ได้เช่นกัน มาดูกันดีกว่าว่าแต่ละตัวเป็นยังไง
.
Git - Version Control ซึ่งการทำงานจริง ๆ เราก็ต้องทำงานกับ Dev คนอื่นอีกหลายคน ซึ่งเจ้านี่จะทำให้เราสามารถควบคุมโค้ดในโปรเจกต์ เพิ่ม ลบ หรือเรียกเวอร์ชันเก่า ๆ กลับมาได้อย่างง่ายดาย แถมยังสามารถทำงานกับเพื่อนร่วมทีมได้ง่ายมากขึ้น
.
SSH - เป็นพื้นฐานสำคัญในระบบ Network ใช้เพื่อควบคุมการเชื่อมต่อในระยะไกลให้ปลอดภัย
.
Linux Command - บางทีเราอาจจะต้องเข้าไป Set ระบบ หรือควบคุมอะไรบางอย่างที่รันอยู่บนระบบ Linux ก็ต้องเรียนรู้คำสั่งพื้นฐานในการใช้งานระบบนี้ไว้บ้าง
.
Data structures และ Algorithms - เป็นวิธีในการจัดการข้อมูล หรือการแก้ไขปัญหาต่าง ๆ นี่ก็เป็นหนึ่งพื้นฐานสำคัญที่ Programmer ทุกคนควรมี ไม่ว่าจะทำงานตำแหน่งไหนก็ตาม เพื่อเพิ่มประสิทธิภาพในการพัฒนาโปรแกรมให้มากขึ้นนั่นเอง
.
📑 ขอบคุณข้อมูลดี ๆ จาก >> https://medium.com/nerd-for-tech/full-stack-developer-roadmap-2021-ebd68255563b , https://www.crampete.com/blogs/road-map-to-full-stack-web-development/
.
หวังว่าจะเป็นประโยชน์กับเพื่อน ๆ น้าาาา หากใครมีอะไรเพิ่มเติมสามารถเมนต์ไว้ด้านล่างได้เลยจ้า
.
borntoDev - 🦖 สร้างการเรียนรู้ที่ดีสำหรับสายไอทีในทุกวัน
#fullstackdeveloper #developers #programmer #frontend #backend #BorntoDev
同時也有10000部Youtube影片,追蹤數超過62萬的網紅Bryan Wee,也在其Youtube影片中提到,...
「expressjs」的推薦目錄:
- 關於expressjs 在 BorntoDev Facebook
- 關於expressjs 在 BorntoDev Facebook
- 關於expressjs 在 紀老師程式教學網 Facebook
- 關於expressjs 在 Bryan Wee Youtube
- 關於expressjs 在 Travel Thirsty Youtube
- 關於expressjs 在 スキマスイッチ - 「全力少年」Music Video : SUKIMASWITCH / ZENRYOKU SHOUNEN Music Video Youtube
- 關於expressjs 在 Node.js and Express.js - Full Course - YouTube 的評價
expressjs 在 BorntoDev Facebook 八卦
🔥 วันนี้เรามาทำความรู้จักกับเจ้า MEAN Stack กันดีกว่า หลายๆ คนคงยังไม่รู้จักว่าเจ้านี่มันคืออะไร ใช้ทำอะไรได้บ้าง วันนี้มาไขข้อข้องใจกันจ้า
.
🍃 MEAN Stack เป็น JavaScript Framework ใช้สำหรับพัฒนาเว็บไซต์ และแอปพลิเคชันบนมือถือที่มีประสิทธิภาพ เจ้า MEAN เนี่ยมันประกอบด้วย
.
💚 MongoDB - เป็น Database แบบ NoSQL ฮิตมากๆ ในปัจจุบัน
💙 Express - มันคือ JavaScript Framework ที่ทำงานบน Node.js
❤️ AngularJS - เป็น Front-end Framework พัฒนาโดย Google ทำงานฝั่ง Client
🧡 Node.js - เป็น JavaScript Framework ทำงานในฝั่ง Back-end ใช้ใน Server
.
🔧 วิธีการทำงาน
.
1) อย่างแรก Client ทำการส่ง Request ต่างๆ ไปยัง AngularJS
2) จากนั้น AngularJS จะส่ง Request ไปยัง NodeJS เพื่อวิเคราะห์ว่าต้องการอะไร แล้วส่งไปยัง ExpressJs
3) ExpressJs ก็จะทำการดึงข้อมูลจาก MongoDB ตามที่ Request มา
4) จากนั้นก็จะส่งกลับไปยัง Node.js
5) Node.js ก็จะนำข้อมูลไปให้ AngularJS เพื่อให้แสดงผล
6) แสดงผลข้อมูลบนหน้าจอ
.
✨ ข้อดี
- เป็น Open-Source
- ช่วยในการพัฒนาเว็บแอปพลิเคชันได้อย่างรวดเร็ว
- ใช้ภาษาเดียวกันทั้งหมด คือ JavaScript
- มีประสิทธิภาพ
- สามารถบำรุงรักษาได้ง่าย
.
🔧 ข้อจำกัด
- อาจจะเหมาะสำหรับพัฒนาเว็บแอปพลิเคชันขนาดเล็ก-กลาง
.
พอจะเข้าใจ MEAN Stack กันบ้างแล้วเนอะ หากใครมีอะไรเพิ่มเติมสามารถแชร์มาได้เลยนะคะ ❤️
.
borntoDev - 🦖 สร้างการเรียนรู้ที่ดีสำหรับสายไอทีในทุกวัน
expressjs 在 紀老師程式教學網 Facebook 八卦
新一代網站伺服器架構:MEAN
(加贈 MEAN 免費電子書)
最近國外科技網站頻頻出現一個新名詞:「MEAN」。而且該名詞只會出現與「網站開發(Web Site Development)」相關的論壇。看著大家「卑鄙」來「卑鄙」去的(Mean 在英文是「卑鄙、小氣」的意思),彷彿這個名詞技客(Geeker)們都已經熟到不用解釋到底在卑鄙個什麼。擁有嚴重資訊焦慮症(笑)的我,眼睛怎能容忍一個不知道全名的縮寫,動不動就從畫面「立體突出」來恥笑我呢!... :-D 稍微用點技巧查了 Google,並且把結果分享給大家。
原來 MEAN 講的是架設網站時,所使用的四套軟體:MongoDB、Express、AngularJS、Node.js。早個十年,那時開發網站流行使用 LAMP (Linux, Apache, MySQL, PHP) 這四套軟體。近年來,由於「大數據(Big Data)」、「分散式架構(Distributed Architecture)」、「非同步函數呼叫(Asynchronous Calls)」流行,傳統的 LAMP 已經無法應付上述三個需求,因此,網站開發環境就從「檯燈(LAMP)」換成「卑鄙(MEAN)」了... :-D 。皆下來我就一一介紹「卑鄙會的會員們」有哪些特色。
MongoDB 是一款以「檔案」做為儲存媒介的資料庫(Database)。有別於用傳統資料庫伺服器儲存資料、得把資料集中在後端單一機器上,使用檔案來存資料,不必硬是把資料集中在後台的一部機器上。你可以把一筆資料「碎屍萬段」,人名與電話的基本資料放在一台機器內的檔案,學經歷資料放在另一台機器內的檔案,達到「分散儲存,平行存取」的效果。這類用檔案做為儲存媒介的資料庫,我們通常稱為 NoSQL Database。近來 Facebook、Google...等網站,都積極使用 NoSQL Database 來做為後端儲存媒介。不但能「分散儲存」資料來預防一台機器掛點、整個網站就不能動的窘境,還能藉由「平行存取」位於數十台機器上分散儲存的資料,達到「秒取」所需的數據。關於 NoSQL 的介紹,可以看這篇「NoSQL 入門指引」: http://www.openfoundry.org/tw/news/9040
接下來我會介紹 Node.js,因為它比 Express 或 AngularJS 都來得基本。什麼是 Node.js 呢?簡單來說,就是執行於伺服器端的 JavaScript。拿 LAMP 時代的成員來比喻,Node.js 的地位就與 PHP 相同,只不過它採用 JavaScript 來當成語言而已。當然,Node.js 不是只有把 JavaScript 從客戶端搬到伺服端那麼簡單而已,還添加了不少功能。最著名的,當屬「非同步呼叫(Asynchronous Calls)」機制了。想瞭解「非同步呼叫」,得先瞭解什麼是「同步呼叫」。當主程式呼叫副程式時,在副程式還沒執行完前,主程式會「卡住」,等待副程式完成返回後,主程式才會繼續下一列程式碼的執行。這種函數呼叫方法稱為「同步呼叫」。但若副程式執行時間長,主程式在等待時就會因螢幕凍結、讓使用者體驗到類似「當掉」的情況。所以另外一種作法,就是主程式呼叫副程式、副程式開始運作後,主程式不等待副程式完成,逕行執行下一道指令。此時主副程式處於「平行運作」的狀況。等待副程式完成,就會「通知」主程式說:「我做完了」,主程式再予以反應即可。這種函數的呼叫方法,就稱為「非同步呼叫」。Node.js 並非三言兩語可以講完,有興趣的朋友,可以參考這本免費的 Node.js 電子書「Node 入門」: http://www.nodebeginner.org/index-zh-tw.html
再來是 AngularJS。它是 JavaScript 的「函式庫(Library)」,地位比較偏「前端」,負責 UI 的建置。如果說 JavaScript 是「無敵鐵金剛」,那 AngularJS 就類似「金剛飛翼」。與無敵鐵金剛結合後,就能讓本來不會飛的鐵金剛,遨翔在天際。AngularJS 有兩大特色:「單一網頁」與「MVC 模式」。「單一網頁」就類似你查詢「Google 圖片」時的感覺相同。網站一開始只提供一部份資料,隨著你往下捲,網站會動態載入剩下的部分。所有內容只要一直捲動,就會完整呈現,不必按「下一頁」,這就叫「單一網頁」。至於「MVC 模式」比較難懂,完全不瞭解它是什麼的版友,就等您實際研讀 AngularJS 再去學吧!Facebook 這邊實在不適合我長篇大論地講「何謂 MVC」。真的求知若渴的朋友,或可參考這篇「MVC 淺談」: http://luvit.me/1GzNxqN。最後,對 AngularJS 有興趣的朋友,可以參考這篇「我的前端 AngularJS 初體驗」: http://upvot.es/1C6W9qd
Express,一稱 ExpressJS,是一款 JavaScript 的「框架(Framework)」。所謂框架,就是協助你快一點寫出你想要的程式碼的工具。如果 JavaScript 是無敵鐵金剛,Express 就是幫忙你快速產生一架無敵鐵金剛的工具(以便讓你快去跟 AngularJS 這個金剛飛翼結合)。如果你是 PHP 的老手,我說 Express 就像是 PHP 內的 PEAR,不知道您是否能更有體會呢?關於 Express 的簡單介紹,中文的不多,不過我還是勉強找到這一篇 OK 的:「使用Node.js + Express建構一個簡單的微博網站」( http://upvot.es/1E4MGQT )。
不知這樣介紹,大家知道怎麼「卑鄙」(MEAN)地建構一個網站了嗎?最後送大家一本「卑鄙入門 XD」免費電子書。點擊後,找尋「eBook」這個關鍵字就能免費下載囉:
"MEAN Web Development", Packt Publishing, 2014
http://www.it-ebooks.info/book/4849/
期待大家也開始在網站開發這一塊,越來越「卑鄙」....
參考資料:
MongoDB(維基百科): http://zh.wikipedia.org/wiki/MongoDB
用 Express 和 MongoDB 寫一個 todo list: http://upvot.es/17ER5vU
AngularJS(維基百科): http://zh.wikipedia.org/wiki/AngularJS
使用 Node.js、Express、AngularJS 和 MongoDB 构建一个实时问卷调查应用程序: http://upvot.es/187BAwj
精通 MEAN: 当 MEAN 遇到 Meetup.com 和微数据: http://upvot.es/1E4Mili
expressjs 在 Node.js and Express.js - Full Course - YouTube 的八卦
... <看更多>