Re: [問卦] C++可以啟發孩子的程式天份嗎?

作者: protoss (天生散人)   2021-12-26 15:51:40
※ 引述《bachelorwhc (積積陰陰德)》之銘言:
: 標題: Re: [問卦] C++可以啟發孩子的程式天份嗎?
: 時間: Sun Dec 26 00:37:33 2021
:
: ※ 引述《Superxixai (洪粉吱已)》之銘言:
: : 小弟小時候第一個接觸的語言就是C++。
: : 雖然過了很久很久,
: : 但是在即將邁入2022的時刻,
: : 教9年級左右的孩子,
: : C++是不是依舊能夠啟發他們的程式天份?
: : 有沒有相關的八卦?
:
: 那要看你怎麼定義程式天份
:
: 如果是講演算法跟資料結構 用C或Python下去操比較快
:
: 如果是講計算機結構 一樣也是用C跟OS下去操
:
:
: 國中時 C++是我第一門接觸的語言
:
: 那個時候要做遊戲的難度不低
:
: C++可以說是最低門檻 自己看書學語法是沒問題
:
: 但是沒人帶很難知道要怎麼開發出軟體還有連結library的觀念
:
: 最多就是寫一些console自娛自樂
:
:
: 也曾經轉而寫PHP跟SQL做網站跟操作資料庫 (當然怎麼設計DB的觀念也是近乎沒有)
:
: 後來在GameMaker上用GameMaker的腳本語言寫遊戲
:
: 才漸漸真正有"寫的東西有用"的實感
:
:
: 新手買語言書自己K 只是習慣程式語言跟熟定義而已
:
: 很容易在"學這個到底要怎麼做出真正能用的程式"的疑問中迷茫
:
: 坊間有不少目的導向 例如以製作遊戲、網站為前提開發的書籍
:
: 是可以跳過純語言的枯燥階段 但新手的瓶頸是在於不知道為何要這樣寫
:
: 最後很多問題還是回到基本功
:
: 其中又以C++跟C為甚 很難讓你跳過基本功
:
: C的基礎是pointer 如果要開發程式 大部分的API 甚至OS提供的library都跳不過
:
: C++雖然用物件導向 還有換個名字的pointer: reference
:
: 但是STL給新手的陷阱更多
:
:
: const char* str = obj.getName().c_str();
:
: 為什麼之後引用str會crash? 這個問題可能有些菜鳥工程師都會犯
:
: for(auto it = v.begin(); it != v.end(); ++it) {
: v.erase(it);
: }
:
: 新手會問 為什麼我按照書上寫的呼叫erase 編譯也能過 為何還會crash?
:
:
: 語言本身也有毛
:
: struct A {
: A(int a, int b) : b_(b), a_(b_ + a + 1) {
: }
:
: int a_;
: int b_;
: };
:
: 為何A(3, 5).a_不是9?
:
:
: 所以建議
:
: 要嘛old fasion寫C
:
: 要嘛寫go或python
:
:

Links booklink

Contact Us: admin [ a t ] ucptt.com