Bagaimana saya harus memperbarui C ++ saya dengan perkembangan modern? [Tutup]


9

Bagaimana saya harus memperbarui C ++ yang berkarat, karena saya yakin bahasa dan praktik terbaiknya telah berkembang? Saya menyadari ini mungkin dekat dengan di luar topik, jadi biarkan saya menjelaskan beberapa detail. Sekitar 10 tahun yang lalu saya pikir saya adalah programmer C ++ yang cukup baik, saya melahap buku-buku Scott Meyers, saya bisa memecahkan teka-teki dalam iklan serat di Dr. Dobbs. Saya mungkin sedikit pengacara bahasa. Saya sudah pemrograman sebagian besar Java, beberapa python selama 10 tahun terakhir sehingga keterampilan OO saya masih up to scratch. Tetapi setelah bergabung dengan sebuah perusahaan di mana C ++ adalah umum, saya menyadari saya harus mengakui pada diri saya bahwa saya sama-sama berkarat, dan sekarang ada fitur bahasa yang baru atau jauh lebih umum daripada yang saya ingat - hal-hal seperti ruang nama dll.

Saya menyadari membaca dan menulis kode (terutama pasangan) adalah cara yang baik untuk mempercepat, tetapi adakah sumber daya lain yang orang akan rekomendasikan dalam hal ini untuk memberi saya langkah awal yang dipercepat. Book? Halaman web? Tutorial?

Untuk meringkas:

  • Rekomendasi untuk sumber daya penyegar spesifik C ++?
  • Bukan OO / pemrograman pada umumnya.
  • Hal-hal selain hanya membaca dan menulis kode.

Jawaban:


10

Jika Anda sudah "melahap buku-buku Scott Meyers ", maka Anda lebih jauh bahwa rata-rata pria yang melakukan C ++ 10 tahun yang lalu (IMHO). Dapatkan edisi ke-3 dari Efektif C ++ (dan buku C ++ Standar Coding oleh Sutter / Alexandrescu) untuk mendapatkan penyegaran singkat, dan, sungguh, Anda harus siap untuk pergi.

Rekomendasi dalam buku-buku ini (awalnya 2005 saya pikir) sama validnya dengan hari ini.

Oh, dan instal peningkatan jika Anda belum melakukannya.

Beruntung bagi Anda untuk memulai kembali dalam C ++, karena saya sangat yakin akan ada banyak sumber daya dan buku jenis mulai ulang tahun ini dan selanjutnya ketika standar C ++ 11 mulai menetap.


Rekomendasi yang sangat baik. Scott Meyers datang ke perusahaan kami tahun lalu dan memberi semua pengembang kami kursus penyegaran dua hari tentang teknik C ++ modern. Dia tahu bagaimana C ++ bekerja di dunia nyata dan bukan hanya akademisi dengan teori.
Karl Bielefeldt

2

1) mulai dengan kompiler modern yang memiliki fitur c ++ 11 (dengan asumsi pekerjaan Anda akan memerlukan itu lebih cepat daripada nanti, jika belum)

2) ambil program yang ada (mungkin proyek kesayangan Anda) dan perbarui atau perluas untuk menggunakan lebih banyak perpustakaan modern (seperti c ++ 11 perpustakaan standar atau boost ).

3) membaca tentang fitur C ++ terbaru. ada juga sejumlah buku bagus. jika Anda belum membaca Desain C ++ Modern , saya akan merekomendasikannya. itu klasik untuk desain canggih menggunakan teknik c ++ yang diperkenalkan dan diasah selama ketidakhadiran Anda.

itu adalah titik awal.


1

Nick,

Saya sarankan Anda terlibat dengan proyek sumber terbuka. Apakah Anda sudah melihat sourceforge ? Ini bisa berlaku untuk bahasa apa pun, tetapi manfaat utama di sini adalah belajar dari pengembang lain sambil berkontribusi pada proyek perangkat lunak. Anda dapat mengambil beberapa gaya menarik dan menggunakan fitur bahasa dari bekerja pada proyek open source. Beberapa baik, beberapa buruk, beberapa .... hanya aneh :).


4
Mungkin saya hanya kurang beruntung, tetapi proyek open source yang saya lihat mengandung beberapa kode paling mengerikan yang pernah saya temui - mereka dapat digunakan sebagai contoh sempurna tentang bagaimana tidak menulis C / C ++. Jadi, jika Anda memutuskan untuk mengintip sumber terbuka demi belajar, saya sarankan Anda memilih proyek yang melibatkan banyak programmer secara aktif. Proyek-proyek semacam itu jauh lebih mungkin memiliki kode kualitas yang baik di dalamnya.

1

Lakukan beberapa kode kata di c ++: hanoi tower, ring buffer, dan semacamnya. Melakukannya akan jauh lebih efisien daripada hanya membaca buku tentang itu - meskipun, membaca buku akan membantu Anda mempelajari hal-hal yang tidak Anda ketahui.

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.