เคยไหม... เขียนโค้ดแล้วติด Bug แต่ไม่รู้จะแก้ไงดี แล้วก็วนลูปอยู่ตรงนั้นเป็นวัน? 🤔 ไม่ก็รู้สึกว่า เราเขียนโค้ดนานกว่าคนอื่น ทั้ง ๆ ที่เจอโจทย์หรือปัญหาเดียวกัน? 😔
.
👉 ปัญหาพวกนี้จะลดลง ถ้าเรา “ฝึกอ่านโค้ด”
.
เพราะในยุคที่สื่อการสอนออนไลน์เฟื่องฟูแบบนี้ ไม่ว่าใครก็เขียนโค้ดได้ โดยไม่จำเป็นต้องมีความรู้หรือประสบการณ์มาก่อน แต่ “การอ่านโค้ด” นี่ตรงข้ามกับการเขียนเลย เพราะจะอ่านเข้าใจหรือไม่ ขึ้นอยู่กับความรู้และประสบการณ์ของคนอ่านเป็นหลัก
.
เอาล่ะ วันนี้ก็เลยจะพาทุกคนไปดู 5 ข้อดีของการอ่านโค้ด ที่ได้อะไรมากกว่าเขียนอย่างเดียว ถ้าพร้อมก็ไปกัน ! 🔥
.
.
📍 1) ออกจากกรอบแนวคิดเดิม ๆ
.
ทุกคนมีความคิดที่ต่างกัน รวมถึงโปรแกรมเมอร์ด้วย ถึงเจอโจทย์เดียวกัน ก็ไม่ได้แปลว่าทุกคนจะเขียนโค้ดออกมาเหมือนกัน ดังนั้น การอ่านโค้ดจึงเป็นวิธีที่ดีมากในการศึกษา ทำความเข้าใจความคิดของโปรแกรมเมอร์คนอื่น รวมถึงได้วิธีเขียนโค้ด/แก้ปัญหาเด็ด ๆ ที่เราอาจคาดไม่ถึง !
.
ยิ่งเราอ่านเยอะแค่ไหน กรอบความคิดเราก็จะยิ่งขยายมากขึ้น นอกจากจะได้แนวคิดใหม่ ๆ ไปปรับใช้กับการเขียนโค้ดแล้ว เราอาจจะคิดอะไรที่เจ๋ง ๆ ออกอีกด้วย แถมพอรู้เทคนิคเยอะ ๆ เราก็จะประหยัดเวลาเขียนโค้ดขึ้นไปอีก ถ้าปัญหานั้นเราเคยอ่านวิธีแก้มา 😂
.
.
📍 2) เราจะเขียนโค้ดได้ Clean มากขึ้น
.
บางคนอาจจะรู้สึกว่า “เขียนโค้ดไม่ดีแล้วไง แค่ใช้ได้ก็พอไหม?” ซึ่งคำตอบของเรื่องนี้ ก็ขึ้นอยู่กับโปรเจกต์ที่เราทำ ถ้าโค้ดชุดนั้นเป็น Prototype ที่ทำขึ้นมาเพื่อให้รู้ว่าโปรเจกต์นั้นจะเป็นประมาณไหน มันก็อาจไม่ได้เป็นไรมากนัก เพราะไม่ได้หยิบโค้ดชุดนี้ไปใช้ใน Product จริง
.
แต่สมมติว่าโค้ดชุดนั้น อยู่ในโปรเจกต์ที่มีคนอื่นทำกับเราด้วย แถมต้อง Maintain ในอนาคตล่ะ? 🤔 การเขียนโค้ดที่ทำความเข้าใจได้ง่าย ๆ ก็ย่อมดีกว่ากับเคสแบบนี้
.
แล้วถ้าเราเป็นคนนึงที่รู้สึกว่า การเขียนโค้ดให้อ่านง่าย ไม่ซับซ้อน ราวกับถูกวางไว้มาเป็นอย่างดีนั้นมันช่างยากซะเหลือเกิน... การอ่านโค้ดเนี่ยแหละ คือจุดเริ่มต้นที่จะทำให้เราเขียนโค้ดอ่านง่ายได้ !
.
การอ่านโค้ดของคนอื่น (ที่เขียนโค้ดได้ดี) จะทำให้เราได้เสพโค้ดที่มีคุณภาพ และถ้าเราอ่านบ่อยจนเป็นนิสัย ก็เหมือนเราได้ศึกษาโค้ดคุณภาพแบบซ้ำ ๆ จนถึงจุดที่เราอ่านมากพอประมาณนึง ถ้าเจอโค้ดที่รันไม่ผ่าน เราก็จะรู้ว่าทำไมโค้ดนั้นรันไม่ผ่าน กลับกันถ้าเจอโค้ดที่รันผ่าน เราก็จะเข้าใจเหมือนกันว่าทำไมโค้ดนี้จึงรันผ่าน 👏
.
สรุปแล้ว การอ่านโค้ดจะทำให้เราเข้าใจว่า เราควรทำยังไงกับโค้ดตัวเอง ถ้าอยากให้โค้ดนั้นมัน Clean และมีคุณภาพนั่นเอง
.
.
📍 3) เพิ่มสกิล Analytical Intelligence
.
“Analytical Intelligence” หรือแปลไทยตรง ๆ ว่า ความฉลาดด้านการวิเคราะห์ 😎 คือความสามารถในการวิเคราะห์สิ่งต่าง ๆ รอบตัว โดยโฟกัสที่การย่อยข้อมูลเหล่านั้น เช่น ถ้าเจอปัญหา ทักษะนี้จะช่วยหาจุดเริ่มต้น ขุดไปจนถึงสาเหตุของปัญหา แล้วคิดวิธีแก้ พร้อมประเมินผลที่คาดหวังจะได้รับ เพื่อหาความเป็นไปได้ในการแก้ปัญหานี้
.
และนี่เป็นสิ่งที่โปรแกรมเมอร์ควรจะมี และจำเป็นยิ่งขึ้น ถ้างานที่ทำมีความซับซ้อน ซึ่งหนึ่งในวิธีที่ช่วยเพิ่มทักษะนี้ได้ ก็คือ “การอ่านโค้ด” นั่นเอง เพราะตอนที่เราต้องอ่านและพยายามทำความเข้าใจโค้ดตรงหน้า คือช่วงเวลาแห่งการฝึกใช้ Analytical Intelligence กว่าจะเข้าใจโค้ดเขา ก็ต้องวิเคราะห์ทั้งปัญหาที่เขาจะแก้ ตามด้วยการวิเคราะห์โค้ดที่เขาใช้ แล้วไปเทียบกับผลลัพธ์ตอนรันได้อีก โอ้โห นี่แหละ ! เวลาทองแห่งการอัปความฉลาด !! 📈
.
.
📍 4) ฝึกสกิล Debug ไปในตัว
.
ชาว BorntoDev เคยเจอ Error หรือ Bug ตอนเขียนโปรแกรมกันไหม? …เชื่อแหละว่าต้องเคยกันสักครั้ง แล้วเพื่อน ๆ คิดว่าคนที่โปรแกรมเมอร์ที่แก้ Error หรือ Bug กันเก่ง ๆ เขามีอะไรที่คนอื่นไม่มี? 🤔
คำตอบก็คือ ทักษะการ Debug นั่นเอง (ก็ใช่สิแอด จะแก้ Bug ก็ต้องมีทักษะแก้ Bug ไม่ใช่เหรอ !)
.
ทุกคนอย่าเพิ่งเลื่อนโพสต์หนีแอด ;-; ! ที่แอดบอกมันฟังดูเบสิกใช่ไหม? แต่ความจริงทักษะการ Debug เป็นทักษะที่ต้องใช้ประสบการณ์เยอะ แถมยังต้องฝึกเป็นประจำอีกต่างหาก ซึ่ง “การอ่านโค้ด” ช่วยเราได้อีกแล้ว
.
Debugging ทักษะนี้สร้างได้ด้วยมือเรา 🙌 เพราะประสบการณ์ไม่ได้มาจากในห้องเรียนหรือการทำโปรเจกต์จริงเท่านั้น แต่เราสามารถอ่านโค้ดของคนอื่น แล้วสวมบทเป็นนัก Debug 🧑💻 เพื่อลองปรับและแก้ Error ของโค้ดนั้นได้ ในทางกลับกัน ถ้าไปเจอโค้ดที่คนเขียน Debug เก่งมาก เราก็สามารถใช้การอ่านเพื่อศึกษาแนวคิดของเขาได้เช่นกัน
.
.
📍 5) อ่าน Source Code เร็วขึ้น
.
การอ่าน Source Code ได้ไว เป็นสิ่งที่โปรแกรมเมอร์ควรจะมี และยิ่งอ่านได้ไวแค่ไหน ก็ยิ่งเข้าใจโปรเจกต์ที่ต้องรับผิดชอบไวมากขึ้น ถ้าเพื่อน ๆ รู้สึกว่าตัวเองยังอ่าน Source Code ไม่เร็ว หรืออยากพัฒนาสกิลนี้ ก็ต้องฝึกอ่านโค้ดให้เป็นนิสัย เพราะโปรแกรมเมอร์ที่มีประสบการณ์จะอ่านโค้ดได้เร็วขึ้นนั่นเอง~ และทักษะนี้จะเป็นประโยชน์กับชีวิตโปรแกรมเมอร์ของคุณแน่นอน 😊
.
.
👉 แอดอยากบอกทุกคนว่า อย่ากลัวที่ต้องเริ่มฝึกอ่านโค้ด แอดรู้ว่ามันยากและต้องใช้เวลา แต่ถ้าเราอยากให้เรื่องไหนง่ายขึ้น เราก็ฝึกฝน ทำมันบ่อย ๆ จนเข้าใจใช่ไหมล่ะ? เพราะมืออาชีพคือคนที่รอบรู้ในอาชีพนั้นทั้งมุมที่สำเร็จและผิดพลาด แล้วเพื่อน ๆ จะกลายเป็นโปรแกรมเมอร์มืออาชีพในอนาคตได้แน่นอน แอดจะเป็นกำลังใจให้ตรงนี้นะคะ
.
🔖 ขอบคุณข้อมูลจาก
https://betterprogramming.pub/6-reasons-why-reading-code-is-more-important-than-writing-21e7b0b62203
.
borntoDev - 🦖 สร้างการเรียนรู้ที่ดีสำหรับสายไอทีในทุกวัน
#การเขียนโปรแกรม #การเขียนโค้ด #Coding #BorntoDev
同時也有2部Youtube影片,追蹤數超過7萬的網紅在地上滾的工程師 Nic,也在其Youtube影片中提到,程式亂寫也可以動,要怎麼寫的好或易於閱讀,就得花上一番功夫去學習寫作技巧。 這支影片會和你分享一些基本的知識點,實戰技巧基本上當代程式語言開發都能使用 不過每個時代會有不同的想法跟觀點,不同的團隊也會有不一樣的慣例,希望這次的內容能夠給你一些不一樣的想法 喜歡影片的話!可以幫忙點個喜歡以及分享...
「clean coding」的推薦目錄:
- 關於clean coding 在 BorntoDev Facebook 的精選貼文
- 關於clean coding 在 一一。細說愛生活 YatYat Family Life Facebook 的最佳貼文
- 關於clean coding 在 BorntoDev Facebook 的最佳解答
- 關於clean coding 在 在地上滾的工程師 Nic Youtube 的精選貼文
- 關於clean coding 在 Untyped 對啊我是工程師 Youtube 的最佳貼文
- 關於clean coding 在 Summary of 'Clean code' by Robert C. Martin · GitHub 的評價
- 關於clean coding 在 Clean Code: Smells and Heuristics - GitHub Pages 的評價
- 關於clean coding 在 Clean coding: how to break loops from inside a function call ... 的評價
- 關於clean coding 在 How can I promote clean coding at my workplace? - Software ... 的評價
clean coding 在 一一。細說愛生活 YatYat Family Life Facebook 的最佳貼文
#英文童書好介紹
#好書齊分享🎁
唔知大家有無同感?好多時買書比小朋友,就係希望小朋友會乖乖自己睇,但現實永遠總差一點點🤏
新年的時候我試咗一個小法寶令一一乖乖寫字同認字,急不及待想分享比大家😍
📩Family Post Box📮
之前我都試過叫一一寫信,但佢寫左一兩次就無興趣,原來係我用錯方法,喺屋企搵一個唔用的紙盒,𠝹開一個洞,就變身成「家庭信箱」,叫一一寫信之後入落去,成件事即刻唔同哂!😮寫咗一陣一一話唔知寫咩好,我就打開本英文書,叫佢見到想寫的就跟住寫,成功令佢自動自覺咁寫咗半個鐘字🥳
另外有好多媽媽唔知點教STEM,入手coding時會有好多問題,原來用一張紙加幾個貼紙,就做到同樣效果😱(見細圖)
呢啲咁正嘅方法當然唔係我諗岀來,係一本叫【50 Awesome Activities for Siblings to Learn and Play Together at Home】,由新加坡岀版社World Scientific岀版,WS的兒童書之所以特別好看,因為他們的觀點和我們不一樣,難怪新一代的家長對外國式教育趨之若鶩。
雖然外國小孩比香港的遲入學,但佢地有時比香港小朋友更有創意,因為佢地更懂得利用家中現有物資,枕頭袋、厠紙筒、橙皮去在遊戲中學習。最喜歡在每個遊戲有詳細解釋,當中會有給混齡小朋友的advance level 版本(適合家有二寶三寶的朋友玩同一款遊戲),有「preparation time」(預備時間)之餘,也貼心地標示「clean up time」(清理時間)給爸爸媽媽參考😂
#邊玩邊學HappyLearning
另一本非常推介的英文書是
【Coronavirus- An Activity Book on How to Stay Healthy and Strong 】
有關新冠肺炎的35個遊戲,利用數字、填色等遊戲,深入淺岀同病毒有關的常識,非常之有延伸性,例如甚麼叫「Virus Lockdown」,記得早前網上瘋傳一個6歲的妹妹對病毒說得頭頭是道嗎?有了這本書,其實不難教小朋友認識時事熱話💭
閱讀的原意是休閒娛樂,親子共讀要保持輕鬆心情,千萬不要跟現今的速食文化相題並論。今年閒賦在家的時間多了,我閱讀的數量是前所未有之多,當中有別人分析的文章,亦有詳細解釋一些和疫情有關的資訊,但每當我讀到外國的英文文章,文字就好像一條鑰匙🔑為我開啟通往另一個世界的大門,令我了解到世界各地發生的事,當地人是怎樣理解和思考同一件事。
這兩本好書都是著名新加坡岀版社World Scientific Education的幼兒童書,可在以下網店購買:
👉🏻http://bit.ly/3yudcCP
✨✨✨✨✨✨✨✨✨✨✨✨✨
另外今次我會送岀WS的圖書比大家,名額有5位,每套有:
❤️50 Awesome Activities for Siblings to Learn and Play Together at Home
❤️ Coronavirus- An Activity Book on How to Stay Healthy and Strong
✔️Like World Scientific Singapore 及 #一一細說愛生活 fb專頁
✔️Like & Share此post
✔️回答問題「小朋友幾大?喜歡看甚麼類型的圖書?」並tag 5位朋友
✔️Like 我Fb最近5個post
‼️記得要做齊以上步驟‼️
截止日期:2月23日
📍只接受香港人參加
📍得獎朋友會獲得私訊通知
📍會要求提供截圖
(如選中時未能即時提供則當作棄權)
📍禮物由World Scientific安排寄岀
📍收到通知後2日未回覆即視作棄權
📍一一。細說愛生活保留最終決定權
#一一愛學習
#一一愛閱讀
#好書推介
#worldscientificsingapore
#英文童書
clean coding 在 BorntoDev Facebook 的最佳解答
🔍 "เขียนโค้ดแบบกลับมาอ่านไม่รู้เรื่อง โค้กรกมาก ๆ ซ้ำซ้อนสุด ๆ แก้ทีนึงพังไปกันหมดทั้งระบบ" ใครเจอปัญหาเหล่านี้อยู่มาดูเทคนิคพื้นฐานในการ Clean Code กันเถอะ !!
.
ในบทความนี้มีตัวอย่าง วิธีการสังเกต พร้อมทั้งแนวทางการแก้ไขแบบง่าย ๆ ไว้ด้วยนะ น่าจะเป็นประโยชน์กันใครหลาย ๆ คนนะครับผม <3
.
#BorntoDev - 🦖 Coding Academy ให้การพัฒนาเทคโนโลยีเป็นเรื่องง่ายสำหรับทุกคน.
clean coding 在 在地上滾的工程師 Nic Youtube 的精選貼文
程式亂寫也可以動,要怎麼寫的好或易於閱讀,就得花上一番功夫去學習寫作技巧。
這支影片會和你分享一些基本的知識點,實戰技巧基本上當代程式語言開發都能使用
不過每個時代會有不同的想法跟觀點,不同的團隊也會有不一樣的慣例,希望這次的內容能夠給你一些不一樣的想法
喜歡影片的話!可以幫忙點個喜歡以及分享、訂閱唷!😘
章節:
00:00 提升品質的影響
01:29 有意義的命名比簡寫更好
03:01 限制傳入參數數量
05:03 簡化條件表達式
06:37 變數定義範圍限制
08:28 一次只做一件事
10:35 Early return
━━━━━━━━━━━━━━━━
🎬 觀看我的生活廢片頻道: https://bit.ly/2Ldfp1B
⭐ 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
⭐ 蝦皮賣場: https://shopee.tw/bboyceo
⭐ Github: https://github.com/niclin
⭐ Podcast: https://anchor.fm/niclin
━━━━━━━━━━━━━━━━
✉️ 合作邀約信箱: niclin0226@gmail.com
#前端 #後端 #工程師
clean coding 在 Untyped 對啊我是工程師 Youtube 的最佳貼文
「亂不等於髒」,已經成為了我得座右銘。忠實的粉絲應該有在我之前的影片中得知我的桌子是出了名的乾淨卻很亂,去年年底整理桌子時記錄下了這支影片,但到現在才剪完發布,是說桌子跟剛整理完時已經相差甚遠了哈哈哈~麻煩空間收納大王救救我吧!
這集會聊到...
💬 Overview 💬
💙 今天要做啥 0:00
💙 整理桌面 2:36
💙 整理成果 11:24
💙 架設新螢幕 12:45
🙌🏻 好物推薦 🙌🏻
👍🏻 Costco Tresanti 電動升降桌 https://www.costco.com.tw/Furniture-Bedding/Office-Furniture/Desks-Workstations/Tresanti-Adjustable-Desk/p/1363151
👍🏻 手動升降桌 https://shp.ee/9yby3im
👍🏻 ADATA 威剛 軍規防震 外接硬碟 https://shp.ee/vbnjv5x
👍🏻 ADATA 外接式硬碟 https://shp.ee/i6y4c3v
👍🏻 Seagate 希捷 外接硬碟 https://shp.ee/g2gsrv9
👍🏻 乾燥花 https://shp.ee/p9347id
👍🏻 logitech 羅技 StreamCam https://shp.ee/fbvgbvc
👍🏻 RODE Lavalier GO 領夾式 小型麥克風 https://shp.ee/nx6w9vc
👍🏻 Logitech 羅技 MX Keys 無線鍵盤 https://shp.ee/ptt9wtm
👍🏻 Logitech 羅技 MX Master 3 無線藍牙滑鼠 https://shp.ee/pu9qtcc
#DeskSetup #工程師桌面 #亂不等於髒
一定要看到影片最後面並且在「YouTube影片下方」按讚留言訂閱分享唷!
【愛屋及烏】
YouTube 👉 https://www.youtube.com/c/Untyped對啊我是工程師
Podcast 👉 https://open.spotify.com/show/3L5GRMXmq1MRsliQt43oi2?si=3zgvfHlETeuGfp9rIvwTdw
Facebook 臉書粉專 👉 https://www.facebook.com/untyped/
Instagram 👉 https://www.instagram.com/untypedcoding/
合作邀約 👉 untypedcoding@gmail.com
-
Untyped 對啊我是工程師 - There are so many data types in the world of computer science, so are the people who write the code. We aim to UNTYPE the stereotype of engineers and of how coding is only for a certain type of people.
凱心琳: 一個喜歡電腦科學邏輯推理,在科技圈努力為性別平等奮鬥的工程師。
【Disclaimer 聲明】
Some links are affiliated.
上面有些連結是回饋連結,如果你透過這些連結購買商品,我可以得到一些小獎勵,但不會影響到你購買的價格,甚至會是更低的價格!謝謝你的支持💕
clean coding 在 Clean Code: Smells and Heuristics - GitHub Pages 的推薦與評價
Below is a copy of the 'Smells and Heuristics' chapter from Bob Martin's excellent book: Clean Code. If you benefit from the wisdom contained herein you ... ... <看更多>
clean coding 在 Summary of 'Clean code' by Robert C. Martin · GitHub 的推薦與評價
Code is clean if it can be understood easily – by everyone on the team. Clean code can be read and enhanced by a developer other than its original author. ... <看更多>