คำตอบที่ได้รับเลือกจากเจ้าของกระทู้
ความคิดเห็นที่ 3
>
> จะเรียนพร้อมกันก็เหมือนจับปลาสองมือ
>
ถ้าอยาก "เข้าถึง" ความเป็น C ก่อนจะไปอย่างอื่น
ก็แค่ pointer กับ malloc ก็พอหรอกครับ
เมื่อไหร่ทำ iterator abstraction จาก pointer ได้
...ประมาณว่าทำอะไรแบบนี้เป็น
void whatever_algorithm(data_type* source, data_type* target, size_t size) {
....
*target_iter++ = calculate_a_thing(*source_iter++);
....
}
แล้วเมื่อนั้นก็เริ่มเรียนภาษาอื่นได้เลยครับ
- เพราะเท่านี้ก็ทำ collection algorithm เอาไว้เปรียบเทียบ pros & cons
กับภาษาอื่นที่ซ่อน pointer (reference type) และ allocation/deallocation (garbage collection) ได้แล้ว
- ....ถ้ามัวรอ คงไม่ได้เรียน
เพราะ c++ มี features อีกมหาศาล
(เดี๋ยวนี้ c++ ออกใหม่ป้วยแดงทุก 3 ปี แข่งกับ modern language อื่น ๆ) [Spoil] คลิกเพื่อดูข้อความที่ซ่อนไว้C++20: An (Almost) Complete Overview - Marc Gregoire - CppCon 2020
35,633 views
Premiered Sep 27, 2020
https://www.youtube.com/watch?v=FRkJCvHWdwQ

คุณสามารถเรียน c++ คู่กันกับภาษาอื่นได้หรอก
เพราะทั้ง c++, c#, java, javascript, python ตัว control structures และ oop
เรียกว่าลอกกันมาทั้งดุ้นครับ อย่ากังวล
- จริง ๆ ยังไม่ต้องไป pointer ก็ได้นะครับ
สมัยนี้เค้าไม่สอน classic c เป็น 1st language กันแล้ว [Spoil] คลิกเพื่อดูข้อความที่ซ่อนไว้CppCon 2015: Kate Gregory “Stop Teaching C"
121,914 views
Oct 19, 2015
https://www.youtube.com/watch?v=YnWhqhNdYyk

หรือเอา hardware type อย่าง pointer ไปไว้ท้าย course หรือเอาไว้ advanced course ต่างหากไปเลย
ไม่ใช่ "ความเก่า" แต่เพราะ learning curve
พูดอีกอย่าง คุณสามารถเรียน C/C++ ตามหลังภาษาอื่นก็ยังได้ครับ
เพราะมันลอก ๆ เหมือนกันหมด
แต่ตระกูล C คุณมี pointer ...ได้นั่งใกล้ hardware มากกว่า
มีรายละเอียด (ได้) มากกว่าถ้าเมื่อไหร่คิดจะมี [Spoil] คลิกเพื่อดูข้อความที่ซ่อนไว้KEYNOTE: What Everyone Should Know About How Amazing Compilers Are - Matt Godbolt [C++ on Sea 2019]
36,684 views
Feb 16, 2019
https://www.youtube.com/watch?v=w0sz5WbS5AM
> จะเรียนพร้อมกันก็เหมือนจับปลาสองมือ
>
ถ้าอยาก "เข้าถึง" ความเป็น C ก่อนจะไปอย่างอื่น
ก็แค่ pointer กับ malloc ก็พอหรอกครับ
เมื่อไหร่ทำ iterator abstraction จาก pointer ได้
...ประมาณว่าทำอะไรแบบนี้เป็น
void whatever_algorithm(data_type* source, data_type* target, size_t size) {
....
*target_iter++ = calculate_a_thing(*source_iter++);
....
}
แล้วเมื่อนั้นก็เริ่มเรียนภาษาอื่นได้เลยครับ
- เพราะเท่านี้ก็ทำ collection algorithm เอาไว้เปรียบเทียบ pros & cons
กับภาษาอื่นที่ซ่อน pointer (reference type) และ allocation/deallocation (garbage collection) ได้แล้ว
- ....ถ้ามัวรอ คงไม่ได้เรียน
เพราะ c++ มี features อีกมหาศาล
(เดี๋ยวนี้ c++ ออกใหม่ป้วยแดงทุก 3 ปี แข่งกับ modern language อื่น ๆ) [Spoil] คลิกเพื่อดูข้อความที่ซ่อนไว้C++20: An (Almost) Complete Overview - Marc Gregoire - CppCon 2020
35,633 views
Premiered Sep 27, 2020
https://www.youtube.com/watch?v=FRkJCvHWdwQ

คุณสามารถเรียน c++ คู่กันกับภาษาอื่นได้หรอก
เพราะทั้ง c++, c#, java, javascript, python ตัว control structures และ oop
เรียกว่าลอกกันมาทั้งดุ้นครับ อย่ากังวล
- จริง ๆ ยังไม่ต้องไป pointer ก็ได้นะครับ
สมัยนี้เค้าไม่สอน classic c เป็น 1st language กันแล้ว [Spoil] คลิกเพื่อดูข้อความที่ซ่อนไว้CppCon 2015: Kate Gregory “Stop Teaching C"
121,914 views
Oct 19, 2015
https://www.youtube.com/watch?v=YnWhqhNdYyk

หรือเอา hardware type อย่าง pointer ไปไว้ท้าย course หรือเอาไว้ advanced course ต่างหากไปเลย
ไม่ใช่ "ความเก่า" แต่เพราะ learning curve
พูดอีกอย่าง คุณสามารถเรียน C/C++ ตามหลังภาษาอื่นก็ยังได้ครับ
เพราะมันลอก ๆ เหมือนกันหมด
แต่ตระกูล C คุณมี pointer ...ได้นั่งใกล้ hardware มากกว่า
มีรายละเอียด (ได้) มากกว่าถ้าเมื่อไหร่คิดจะมี [Spoil] คลิกเพื่อดูข้อความที่ซ่อนไว้KEYNOTE: What Everyone Should Know About How Amazing Compilers Are - Matt Godbolt [C++ on Sea 2019]
36,684 views
Feb 16, 2019
https://www.youtube.com/watch?v=w0sz5WbS5AM
▼ กำลังโหลดข้อมูล... ▼
แสดงความคิดเห็น
คุณสามารถแสดงความคิดเห็นกับกระทู้นี้ได้ด้วยการเข้าสู่ระบบ
เริ่มหัดเขียนโปรแกรมภาษาอื่นกันตอนไหนคะ?