👉 เมื่อเราได้รู้จัก MVC ไปกันแล้ว..มันยังมีอีกโมเดลหนึ่งที่สำคัญในการเขียนโปรแกรมเช่นกันนะ นั่นก็คือ… MVVM นั่นเอง!!
.
แล้วมันคืออิหยังงง?? เหมือนหรือต่างกับ MVC รึป่าวนะ หากพร้อมแล้ว มาหาคำตอบกันได้ในโพสต์นี้เลยจ้าาา
.
🌈MVVM ย่อมาจาก Model-View-ViewModel พัฒนามาจาก MVC โดยจะแยก View ออกจาก Model เพิ่ม ViewModel ขึ้นมาเพื่อเก็บข้อมูลทั้งหมดที่ View ต้องการ โดยทั้งสองจะส่งผลซึ่งกันและกัน หากมีอันไหนเปลี่ยนแปลง อีกอันก็จะเปลี่ยนแปลงตาม
.
👩🔧 Model
เหมือนกับ MVC มีหน้าที่จัดเก็บ และจัดการกับข้อมูลต่าง ๆ ภายในโมเดล
.
✨ View
เป็นส่วนการแสดงผล ซึ่งใน MVVM จะแยกกับ Model อย่างชัดเจน เน้นการแสดงผลอย่างเดียว ส่วน Logic ต่าง ๆ เป็นหน้าที่ของ ViewModel
.
👨💻 ViewModel
เป็นส่วนที่แปลง Logic ต่าง ๆ ให้แสดงบน View ได้ ซึ่ง ViewModel เปรียบเสมือนสมองของ View นั่นเอง โดยจะมี Data Binding เพื่อควบคุมการติดต่อระหว่างทั้งสอง เมื่อส่วนใดมีการเปลี่ยนแปลงจะส่งผลถึงกันและกัน
.
🌟 ข้อดีของ MVVM
- แยกส่วน Logic ออกจากการแสดงผล
- ง่ายต่อการบำรุงรักษาและทำการทดสอบ
- สามารถเขียน Unit Test Case สำหรับทั้ง ViewModel และ Model โดยไม่ต้องกังวลในส่วน View
- เหมาะกับการพัฒนาเว็บหรือแอปที่มีการเปลี่ยน UI บ่อย ๆ เพราะไม่กระทบกับส่วน ViewModel
.
หวังว่าจะเป็นประโยชน์กับเพื่อน ๆ นะคร้าบบบบบบ 🥰
.
💥หากใครอยากอ่าน MVC แอดเคยสรุปไว้ให้แล้ว คลิกลิงค์ด้านล่างแล้วไปอ่านกันได้เลยจ้า
https://www.facebook.com/borntodev/posts/4245182842206643
.
Source : https://andrewlundy.hashnode.dev/software-architectural-patterns-mvvm , https://www.guru99.com/mvc-vs-mvvm.html
.
borntoDev - 🦖 สร้างการเรียนรู้ที่ดีสำหรับสายไอทีในทุกวัน
同時也有1部Youtube影片,追蹤數超過7萬的網紅在地上滾的工程師 Nic,也在其Youtube影片中提到,軟體工程師在進入職場後,前 3 年是想法塑形以及定義價值觀的最佳時機,往往在初期沒建立好的觀念和實力,到了後面更是被日新月異的技術以及更強更年輕的新血注入給淹沒。 要如何保持高速成長及不斷學習,是工程師生涯得不斷思考的問題,而這部影片將會和你分享,我如何用日本劍道的三字心訣,分析我自己生涯的前三年...
unit test patterns 在 91 敏捷開發之路 Facebook 的最佳解答
剛好跟報名課程的學員交流了一下,針對之前推薦的書籍,補上實務跟閱讀的順序:
▎敏捷開發(實務順序排列,如果是閱讀順序,我建議倒著念):
《Impact Mapping》
《User Story Mapping》
《 Specification by Examples》
《ATDD by Example》
《Test Driven: TDD and Acceptance TDD for Java Developers》
《Growing Object-Oriented Software, Guided by Tests》
《The Art of Unit Testing: with examples in C#, 2nd edition》
▎重構(閱讀順序):
《Working Effectively with Legacy Code》
《Refactoring: Improving the Design of Existing Code》
《Refactoring to Patterns》
希望對各位粉絲朋友們有些幫助。
unit test patterns 在 ienaeliena.com Facebook 的最讚貼文
PROGRAMMER NEEDED
(Fresh Grad & Intern also can apply)
PHP Developer
Responsibilities :-
-To develop applications based on customer’s requirements and specifications.
-To perform User Acceptance Test (UAT) to ensure the application is compliant with user and business requirements.
-To resolve issues regarding to application and project assigned.
-To maintain and support the application.
-To attend training and to do research & development of relevant knowledge and skills
-To ensure that all information system operate according to internal standards.
-To liaise and attend meetings with project owner or person in charge to perform duties or solving issues.
Requirements :-
-Possess at least a Diploma, Advanced/ Higher/ Graduate Diploma, Bachelor’s Degree, Post Graduate Diploma or Professional Degree in Computer Science/ Information Technology or equivalent.
-Required skill set (s): LAMP (Linux, Apache, MySQL, PHP).
-Should have at least experience in web application/ product development using PHP.
-Team player with good analytical skills and self- motivated.
-Working experience in SMS service industry will be an added advantage.
-Knowladge on MVC framework like Zend, Cake PHP, Code Ignitor etc.
Application Developer
Responsibilities :-
-To develop innovative software applications.
-Involve in full lifecycle of application development.
-Support, maintain and document software functionality.
-Perform software technical documentation.
Authority :-
-To develop software applications.
Requirements :-
-Candidate must possess at least a Advanced Diploma in Computer Science/Information Technology or equivalent.
-At least 1 year of experience in software product development.
-Programming skills on Microsoft .NET framework (ASP.NET, VB.NET, PHP, XML, Web service).
-Database design and development and data modeling.
-Fundamentals of object-oriented design and design patterns, data structure, algorithms.
-Experience with multiple operating systems (Windows Server/centOS).
-Knowledge on Linux, Apache, MySQL and PHP will be credits.
-Interested applicants are requested to email in a detailed resume stating working experience, current and expected salary and contact number to: [email protected]
company website : ionnex.com
Company Address :
Unit 15-13, Q Sentral,
2A, Jalan Stesen Sentral 2,
Kuala Lumpur Sentral,
50470 Kuala Lumpur,
Malaysia.
unit test patterns 在 在地上滾的工程師 Nic Youtube 的最讚貼文
軟體工程師在進入職場後,前 3 年是想法塑形以及定義價值觀的最佳時機,往往在初期沒建立好的觀念和實力,到了後面更是被日新月異的技術以及更強更年輕的新血注入給淹沒。
要如何保持高速成長及不斷學習,是工程師生涯得不斷思考的問題,而這部影片將會和你分享,我如何用日本劍道的三字心訣,分析我自己生涯的前三年在做的學習,並一步步判斷自己成長學習的階段及改善。
章節:
00:00 有投票一定要來看
01:02 學習三階段
03:17 刻意練習的第一年
07:15 成長衝刺的二至三年
09:54 三年以後呢?
喜歡影片的話!可以幫忙點個喜歡以及分享、訂閱唷!😘
━━━━━━━━━━━━━━━━
⭐ 蝦皮賣場: https://shopee.tw/bboyceo
⭐ instagram (生活日常): https://www.instagram.com/niclin_tw/
⭐ Facebook (資訊分享): https://www.facebook.com/niclin.dev
⭐ Blog (技術筆記): https://blog.niclin.tw
⭐ Linkedin (個人履歷): https://www.linkedin.com/in/nic-lin
⭐ Github: https://github.com/niclin
⭐ Podcast: https://anchor.fm/niclin
━━━━━━━━━━━━━━━━
🌟 任何問題或合作邀約信箱: niclin0226@gmail.com
#前端 #後端 #工程師 #守破離