Apakah C ++ modern menggantikan C #? Apakah Microsoft mendorong pengembang untuk mengadopsi C ++? [Tutup]

91

Saya mendengar tentang popularitas C ++ modern dan beberapa pembicaraan tentang migrasi kembali ke C ++ dari C # atau bahasa sejenis C lainnya.

Saya tahu tentang fitur C ++ 11 tapi saya ingin mendengar pengalaman Anda, terutama dari pengembang yang bermigrasi dari C # ke C ++.

Lebih penting lagi, apakah Microsoft mendorong pengembang untuk menggunakan C ++? Jika ya, mengapa?

Amir Karimi
sumber
16
Saya pikir C ++ selalu menjadi bahasa yang lebih banyak digunakan karena lebih mapan dan mudah dibawa daripada C #. Saya tidak berpikir itu menggantikan C #. Untuk aplikasi bisnis berbasis windows, C # masih akan banyak diminati sebagai bahasa yang mudah didapat . C ++ tidak pernah benar-benar hilang. Baru-baru ini semacam kebangkitan baru-baru ini.
KChaloux
2
Saya harap tidak. Java dan C # telah menjadi anugerah bagi pengembang dan mereka masih berevolusi.
Jesse C. Slicer
4
Baik C ++ dan C # hanyalah alat : pilih yang terbaik untuk pekerjaan tertentu. mis. jika Anda ingin menulis kode lintas platform, Anda mungkin ingin menggunakan C ++; jika Anda ingin aplikasi kecil yang tidak memerlukan instalasi .NET runtime Anda mungkin ingin menggunakan C ++ (dengan CRT yang terhubung secara statis); jika Anda ingin mengembangkan beberapa alat GUI untuk Windows dengan cara RAD, Anda mungkin ingin menggunakan C # dan WinForms; dll
Mr.C64
6
Ini pertanyaan yang bagus, mungkin perlu ditulis ulang. Ini bukan bahasa lain A vs. bahasa B. Sebaliknya, secara spesifik apa posisi Microsoft, mengapa ia berubah dan ke mana mereka pergi karena kenyataannya adalah MS cukup besar sehingga ketika mereka memberikan pengaruh setidaknya gunung yang lebih kecil cenderung untuk bergerak. Dan ya dalam hal ini, mereka pasti mempengaruhi.
DXM
9
Mari kita tetap sopan semua orang. Kekasaran tidak akan ditoleransi.
maple_shaft

Jawaban:

95

Ya, kecurigaan Anda benar. Microsoft mendorong C ++ untuk kembali dan menjadi lebih populer.

Saya tidak dapat menemukannya sekarang, tetapi beberapa saat yang lalu saya melihat presentasi oleh salah satu orang besar Microsoft dan semuanya diarahkan pada pengembang dan hampir diluncurkan dari Windows 8 dan terutama WinRT (pengganti kerangka kerja .NET juga sebagai Win32 API).

Dia memiliki garis waktu yang menjelaskan bagaimana berbagai tekanan mempengaruhi teknologi apa yang populer pada waktu-waktu tertentu. Jadi pada awalnya orang menginginkan kecepatan sehingga mereka semua dikodekan dalam C / C ++ (dua bahasa terpisah). Karena perangkat keras semakin cepat, fokus beralih dari kecepatan eksekusi dan lebih ke kecepatan pengembangan, sehingga bahasa tingkat yang lebih tinggi menjadi jauh lebih populer.

Namun, sekarang fokusnya menjadi lebih ke arah komputer berbasis komputer dan ARM (Windows 8 adalah rilis Windows pertama yang dikompilasi untuk ARM) dan banyak yang percaya mereka akan menjadi jauh lebih populer dan untuk beberapa akan sepenuhnya menggantikan desktop. Jadi fokusnya (setidaknya di mata Microsoft) adalah kembali ke C ++ karena sekarang kami peduli dengan daya tahan baterai. Kode tingkat yang lebih tinggi = lebih banyak instruksi = dibutuhkan lebih banyak jus.

Untuk mendukung transisi ini kembali ke C ++, mereka telah memperkenalkan API pemrograman Windows 8 yang sama sekali baru, yang disebut WinRT (terakhir saya periksa, itulah namanya). API ini mengikuti tema .NET Framework dalam lingkup fungsi yang disediakannya tetapi akan tersedia untuk siapa saja yang mengkode dalam C ++ (melalui antarmuka COM), dalam C # atau bahkan dalam Javascript bagi mereka yang ingin menulis aplikasi HTML 5 / Javascript. Mereka juga membawa XAML (teknologi yang digunakan dalam WPF, kerangka UI terbaru mereka) untuk tersedia di C ++ juga.

Jadi bagi saya hal itu mengindikasikan bahwa pasti ada lebih banyak fokus pada C ++ di Microsoft daripada sebelumnya.

PEMBARUAN # 1:

Karena saya baru saja mendapat lencana 'jawaban bagus' untuk ini, saya pikir mungkin saya harus kembali dan a) mengklarifikasi beberapa hal dan b) membuat polisi yang memeriksa fakta senang karena seperti yang kita semua tahu di forum teknologi segala hal yang tidak akurat dapat mengakibatkan perang itu berlangsung selama bertahun-tahun.

  1. WinRT bukan pengganti .NET framework, tetapi ini merupakan alternatif lain yang dimiliki oleh para pengembang MS Windows dan MS sangat mendorong orang untuk pergi ke arah itu. Tampaknya (tolong tahan api Anda jika ini tidak 100% akurat) bahwa WinRT terutama ditargetkan untuk aplikasi UI modern meskipun aplikasi desktop biasa harus dapat memanfaatkannya juga. Karena itu, MS sangat mendorong orang untuk beralih ke menulis a) aplikasi UI modern dan b) mulai menggunakan WinRT sehingga keseimbangan menggeser persentase orang yang menggunakan .NET framework kemungkinan besar akan turun.

  2. C ++ tidak akan pernah menggantikan bahasa level yang lebih tinggi seperti C # atau python. Sama seperti bahasa-bahasa itu tidak akan pernah menggantikan C ++. Ini mungkin bagian paling kontroversial dari pertanyaan OP. Tapi itu semua tentang keseimbangan dan faktanya adalah:

    • Komunitas C ++ (dengan MS menjadi bagian besar darinya) sedang mendorong comeback yang kuat untuk memposisikan C ++ sebagai bahasa yang baik untuk perangkat berdaya rendah, yang pangsa pasarnya naik gila-gilaan belakangan ini. Jika Anda tidak percaya kepada saya, cari serangkaian pembicaraan "GoingNative" yang dimulai tahun lalu.
    • Dengan segala upaya dan pengaruh dari Microsoft, penggunaan C ++ pasti akan naik, sementara C # mungkin akan kehilangan beberapa hal. Inilah yang didorong oleh MS dan seperti yang saya katakan di komentar di atas, ketika MS menempatkan modal mereka di belakang sebuah ide, mereka memang menggeser sebagian besar industri. Saya mungkin akan mendapat tanggapan dari beberapa orang yang akan berdebat, "industri apa, saya selalu menggunakan Linux" dan hanya itu tanggapan saya, bangun! Ya, ada OS lain di luar sana tetapi mayoritas pasar desktop, baik konsumen dan bisnis saat ini adalah Windows dan setiap pengembang serius yang ingin memaksimalkan nilai waktunya akan sangat konyol untuk tidak menargetkan potongan pasar desktop itu.

Jadi kesimpulannya: Ya, MS mendorong C ++ untuk kembali sehingga kemungkinan besar popularitasnya akan meningkat. Tidak, C ++ tidak akan pernah menggantikan C #.

Perbarui # 2:

Saya tidak tahu mengapa, tetapi komunitas teknis cenderung melihat hal-hal dengan warna hitam / putih yang sangat absolut ketika kenyataannya penuh dengan nuansa abu-abu. Ini adalah tanggapan terhadap beberapa komentar baru yang ditambahkan ke posting ini:

  1. Kerangka NET. Tidak akan hilang dalam waktu dekat (atau pernah). Hampir setiap teknologi yang dimiliki windows sejak 90-an masih ada dalam beberapa bentuk atau mode. Jadi bagi mereka yang sangat terikat dengan .NET framework: a) jangan khawatir tentang itu menghilang dan b) berhenti berdebat mendukungnya seolah-olah hidup Anda bergantung padanya, API Anda aman.

  2. WinRT tidak menerapkan kembali banyak fungsi yang di masa lalu disediakan oleh Win32 dan .NET frameworks APIs. Orang yang menginginkan fungsionalitas itu akan memiliki pilihan jika mereka ingin menggunakan WinRT, .NET framework, atau melanjutkan dengan Win32 API (itu juga tidak mati). Jika WinRT tidak mendukung pembuatan aplikasi web yang mudah saat ini, ada peluang yang sangat baik untuk mendukungnya di masa depan.

Posisi yang diumumkan Microsoft adalah bahwa WinRT adalah kerangka kerja besar yang memberi Microsoft kesempatan untuk memulai dengan papan tulis yang bersih dan membangun API menggunakan pelajaran yang dipelajari dalam Win32 API dan .NET framework itu sendiri. Saya memang mencoba mencari video itu, dan masih tidak dapat menemukannya, tetapi salah satu hal yang disebutkan oleh pembicara adalah bahwa ada beberapa area kerangka. dalam antarmuka pembersih baru.

DXM
sumber
7
Apakah itu pembicaraan Herb Sutter di C ++ dan seterusnya, berjudul "Mengapa C ++?" Ada video di Channel 9, meskipun saya kesulitan mengaksesnya saat ini, mungkin karena Redmond menjadi tuan rumah acara streaming besar. Logika Anda masuk akal, tetapi pernyataan seperti ini benar-benar perlu didukung dengan beberapa referensi, karena ini akan mewakili perubahan strategis utama bagi Microsoft dan siapa pun yang mengembangkan perangkat lunak dengan produk Microsoft.
Robert Harvey
13
WinRT bukan pengganti .NET. Tolong simpan fakta-fakta Anda.
Euforia
4
@ Euphoric: Dengan kata lain .NET framework tidak pernah menggantikan Win32 API. Pada saat yang sama, ketika C # keluar banyak orang beralih dan lupa semua tentang membuat panggilan fungsi C-style ke windows DLL. MS mendorong untuk saklar yang sama sekarang. Jadi ya, .NET framework akan terus ada di bawah naungan WinRT dan yakin Anda masih bisa menggunakan .NET framework, tetapi MS mendorong orang untuk beralih ke framework baru.
DXM
21
@ gbjbaanb - Ini 100% salah. Pertama, SEMUA .NET selalu merupakan pembungkus yang sangat bagus untuk pustaka Win32. Kedua hanya ada perbedaan kecil antara Full.NET Profile dan 'WinRT'. Profil NET, perbedaan utama, adalah banyak hal yang diterapkan dengan buruk 10-15 tahun yang lalu telah dihapus, dan diganti dengan kode yang dirancang lebih baik. Sampai mereka menyingkirkan perpustakaan Win32 bersama-sama. NET ada di sini untuk tetap. Komentar Anda menunjukkan kurangnya pengetahuan SELESAI dan TOTAL tentang bahasa .NET dan C # itu sendiri.
Ramhound
6
Belum lagi untuk aplikasi Web, .NET bagus. Jika pernah menjadi 'pengganti', itu akan untuk aplikasi desktop, dan bukan aplikasi Web.
George Stocker
22

Tidak, Windows 8 adalah semua tentang menggunakan bahasa apa pun yang Anda butuhkan (atau tahu) untuk menyelesaikan pekerjaan. JavaScript, .Net bahasa (C #) dan C / C ++ semuanya didukung secara merata.

Tidak ada yang diganti dan terserah pengembang pada akhirnya. Namun ada dorongan untuk daya tahan baterai yang lebih baik yang membuat WinRT lebih mudah.

Pengecualiannya adalah gim di mana C ++ mendapatkan lebih banyak dukungan, terutama pada Windows Phone 8 sedangkan bahasa yang dikelola tidak memiliki dukungan asli (alias tidak xna).

Daniel Little
sumber
1
+1 Microsoft sangat ingin agar Windows 8 diadopsi di pasar ponsel cerdas dan tablet. Apple menghasilkan lebih banyak pendapatan dari iPhone saja daripada total yang dilakukan Microsoft. Satu kendala adalah bahwa ada sangat sedikit aplikasi untuk ponsel / tablet Windows dibandingkan dengan platform yang ada. Jadi mereka ingin memungkinkan siapa pun untuk membuat aplikasi, dalam bahasa favorit mereka. C #, C ++, atau JavaScript.
MarkJ
Saya tidak tahu mengapa mereka memutuskan untuk menghentikan dukungan c / c ++ asli mulai dari windows phone 7. Sejak hari itu, windows + windows mobile menjadi dari 90% platform utama untuk perusahaan kami bergeser ke kepentingan 10%. 10% hanya karena alat pengembangan terbaik (studio visual), jika tidak kita tidak membuat produk lagi bahkan untuk desktop windows.
Pavel P
1
@Pavel Saya tidak yakin apa yang Anda katakan di sana ..
Daniel Little
@Pavel -mereka menjatuhkan kode asli dari WinPhone7, lalu menjatuhkan kode yang dikelola dari WinPhone8. Mungkin Anda dapat mengunjungi kembali platform sekarang, atau mengabaikannya sampai / jika mendapat pangsa pasar yang jauh lebih besar.
gbjbaanb
19

Saya tahu tentang fitur-fitur C ++ 11 tetapi saya ingin mendengar pengalaman Anda

Pemikiran bahwa orang akan lebih suka C ++ daripada C # (atau cukup banyak posting lain 1990 [non-php] alteratif) untuk pemrograman tujuan umum menggelikan . C ++ 11 menambahkan beberapa bit yang hilang dengan baik, tetapi masih memaku kaki anjing .

C ++ memiliki beberapa relung yang bagus, dan masih merupakan opsi terbaik pada beberapa platform dengan dukungan compiler terbatas. Tapi tidak, C ++ modern sama sekali tidak bisa menggantikan apa pun kecuali mungkin C ++ kuno yang rusak.

Telastyn
sumber
31
Baca apa yang Anda tulis. Anda langsung mengklaim bahwa menggunakan C ++ untuk pemrograman tujuan umum di atas C # adalah menggelikan . Apakah ini dengan tulus fakta yang Anda yakini, atau itu hanya pendapat Anda sendiri yang berlebihan?
zxcdw
38
@zxcdw - Jika saya memiliki 100 masalah pemrograman umum, saya akan menyelesaikan ~ 90 di antaranya lebih cepat, lebih baik, dengan lebih sedikit bug menggunakan C # atau Java atau Python atau Scala atau ... Dan itu murah hati. Ini adalah sudut pandang umum dari hampir setiap programmer profesional yang saya tahu; bahkan orang-orang yang menggunakan C ++ sebagai bahasa utama mereka.
Telastyn
33
@zxcdw: Saya adalah pengembang C ++ hardcore. Saya telah melakukan C ++ selama 15+ tahun dan sebagian besar bekerja pada aplikasi back-end yang membutuhkan C ++. Saya sudah di seluruh STL dan setengah dari Meningkatkan. Banyak yang mencemaskan tim saya, saya telah memperkenalkan metaprogramming template di beberapa tempat yang saya pikir layak untuk itu. Poin yang saya coba buat adalah bahwa saya suka C ++ dan bekerja dengannya. Karena itu, saya setuju dengan Telastyn, jika saya memiliki masalah umum yang tidak memerlukan apa yang ditawarkan C ++, saya lebih suka mengambil C # atau bahkan Python. Mereka adalah bahasa tingkat yang lebih tinggi dan Anda hanya menyelesaikan sesuatu dengan lebih cepat. Ini benar setidaknya untuk Win devs
DXM
5
@MadKeithV - Jika saya tidak bekerja pada aplikasi C # yang sedang berjalan di OSX, iOS dan Android, saya mungkin memberikan argumen lintas platform yang sedikit lebih berat. Bahkan mengabaikannya, bahasa non-C # yang saya daftarkan hampir selalu merupakan opsi yang lebih baik daripada C ++ ketika cross-platform menjadi perhatian yang kuat. C ++ 11 tidak melakukan banyak hal untuk mendorong opsi-opsi itu.
Telastyn
14
Jika yang Anda miliki adalah palu, semuanya terlihat seperti paku. Perbaikan dalam C ++ 11 tidak akan mengurangi dampak meresap dari C # dan sejenisnya, tapi mungkin lebih banyak bahasa platform agnostik, tetapi itu akan membuat kapal itu tetap mengapung. Nilai jual terbesar dari C ++ 11 tetap bahwa itu dapat menjadi bahasa ujung ke ujung untuk sistem yang mencari-cari di kedalaman sistem, namun menawarkan kesempatan untuk bermain-main dengan abstraksi tingkat tinggi.
JustinC
2

DXM menulis:

Jadi fokusnya (setidaknya di mata Microsoft) adalah kembali ke C ++ karena sekarang kami peduli dengan daya tahan baterai. Kode tingkat yang lebih tinggi = lebih banyak instruksi = dibutuhkan lebih banyak jus.

Menurut kata-kata ini memilih Java sebagai bahasa utama / kerangka kerja untuk Google Android adalah sebuah kesalahan. Bukan itu. Bahasa tingkat yang lebih tinggi biasanya berarti menyelesaikan sesuatu dengan lebih cepat dan saya pikir ini adalah hal yang paling penting bagi Microsoft dan Google. Semakin banyak aplikasi yang dibuat untuk platform, semakin tinggi keuntungan dari produsen OS.

Di sisi lain ada banyak perangkat lunak untuk Windows yang masih ditulis dalam C ++ sehingga mendorong para pengembang untuk beralih ke C # / JavaScript / apa pun akan menjadi gila. Microsoft fokus memberi kemungkinan untuk mengembangkan aplikasi Win8 kepada sebanyak mungkin pengembang karena itu menurut saya mereka memutuskan untuk mendukung C ++ dan JavaScript dalam tumpukan pengembangan Win8.

rotman
sumber
5
Jawa adalah sebuah kesalahan. Jika Anda ingin kinerja mentah (dan Anda sering melakukannya) maka Anda ingin menulis dalam C / C ++. Jika Anda ingin produktivitas pengembang maka Anda ingin bahasa tingkat yang lebih tinggi seperti Python atau PHP atau Ruby atau JS. Java (dan C #) adalah sistem jalan tengah yang tidak memberi Anda kinerja terbaik atau produktivitas terbaik. Karena itu, C ++ tidak terlalu buruk - Anda bisa mendapatkan produktivitas yang baik dari itu setelah Anda tahu apa yang Anda lakukan.
gbjbaanb
8
@ gbjbaanb Saya memiliki perasaan campur aduk tentang komentar Anda: beberapa tahun yang lalu, menempatkan Java dan C # pada tingkat abstraksi yang sama akan masuk akal, tetapi pengenalan LINQ, ekspresi lambda dan fitur pemrograman async dalam versi yang lebih baru. NET memiliki pindah C # ke tingkat yang lebih tinggi (Java akan mengejar kekurangan pemrograman fungsional di JDK8, tapi itu masih dalam tahap akses awal).
codesparkle
2
@ gbjbaanb untungnya, WCF hanya sebagian kecil dari .NET, dan menggeneralisasi bahwa untuk menerapkan ke bahasa C # tidak valid. Sudahkah Anda benar-benar menggunakan fitur baru sejak .NET 3? Karena VS sama sekali bukan lingkungan pengembangan yang hebat (pada kenyataannya, itu benar-benar menjengkelkan tanpa ReSharper). Jadi, mengingat bahwa situs ini (dan seluruh jaringan SE) dibangun dengan C #, komentar Anda tampaknya sedikit tidak akurat.
codesparkle
1
@rotman Tolong jangan balas jawaban orang lain dengan jawaban Anda sendiri. Jawaban seharusnya hanya menjawab pertanyaan awal :)
Andres F.
6
@ gbjbaanb: Saya akan mengatakan bahwa itu adalah pernyataan tanpa bukti bahwa sistem jalan tengah yang tidak memberi Anda kinerja terbaik atau produktivitas terbaik adalah kesalahan. Mengingat bahwa kinerja dan produktivitas keduanya penting, solusi terbaik adalah yang menyeimbangkan keduanya, dan pilihan jalan tengah seperti Java atau C # adalah pilihan yang sangat baik untuk banyak kasus penggunaan.
Carson63000
2

C ++ masih memiliki file Header, preprocessors yang fleksibel (#define), ... barang-barang semacam itu yang oleh sebagian orang dianggap fitur-fitur ini 'jahat' atau 'sulit dikelola'.

C #, di sisi lain, gunakan metadata, tidak perlu menulis dan memelihara file header.

Tentang Microsoft menambahkan lebih banyak fitur ke C ++: Tidak masalah.

Setiap kompiler C ++ menambahkan lebih banyak fitur, termasuk fitur C ++ 11. gcc juga.

linquize
sumber
7
Jika yang bisa Anda katakan buruk tentang C ++ adalah file header dengan baik, Anda secara tidak langsung telah membuktikan intinya. Saya dapat membuat daftar seluruh masalah C # serius, non-portabilitas, non-deterministik, overhead run-time, proprietary, dll.
user805547
1
Gunakan alat yang tepat untuk pekerjaan yang tepat. C ++ bagus untuk perusahaan seperti Intel untuk berbagai kinerja kode yang tidak terkelola, diperlukan level rendah untuk proyek medali, tetapi jika Anda memerlukan situs web / layanan web yang dilakukan oleh setiap perusahaan, daripada semoga sukses dengan C ++ untuk itu!
Tom Stickel
1

Mungkin hanya saya, tapi, saya melihat penggunaan C jauh lebih sederhana daripada C ++.

Fakta bahwa C ++ telah menelan keseluruhan C membuatnya sulit untuk menyimpulkan siapa yang menggunakan apa.

Tetapi ada jauh lebih banyak proyek open source C daripada C ++.

Pandangan saya adalah jika Anda perlu mendekati penggunaan kecepatan logam C. Jika Anda membutuhkan fleksibilitas dan pengelolaan dengan kinerja yang wajar, gunakan C # atau Java. Jika Anda ingin desain bersih dilakukan dengan cepat, gunakan Python, Scala, Groovy, atau beberapa bahasa dengan fitur lengkap.

James Anderson
sumber
2
Tidak, saya pikir Anda salah di sini. C ++, jika Anda menonaktifkan pengecualian, sedekat mungkin dengan logam seperti C, selama Anda tahu apa yang Anda lakukan. Masalahnya adalah ABI. Dalam C ++ situasinya masih harus dipecahkan, mereka sedang mengusahakannya. Setelah ini selesai, saya pikir tidak akan ada banyak daya tarik untuk menggunakan C daripada C ++ padahal sebenarnya C ++ memiliki pengecekan kesalahan yang lebih baik dan merupakan superset, jadi alat ini akan lebih unggul pada saat itu.
Germán Diago
0

c ++ tidak menggantikan c #. Mari kita lihat di mana bahasa c ++ digunakan. Ini digunakan ketika ada kebutuhan untuk kinerja tinggi, untuk menulis perpustakaan middleware, akses tingkat rendah, dan untuk menulis kode untuk perangkat sumber daya terbatas. Meskipun Anda dapat menggunakan c # untuk beberapa c ++ ini lebih cocok untuk ini. Dorongan Microsoft untuk c ++ sangat terkait dengan dorongan besarnya ke ruang seluler. Tidak ada yang akan meminta Anda untuk menulis aplikasi web Anda berikutnya di c ++. Tetapi dengan Qt, argumen produktivitas tidak dapat dibuat terhadap c ++. Tapi saya pikir banyak orang tidak terbiasa dengan Qt.

Jaak
sumber
C ++ masih banyak digunakan dalam pengembangan perangkat lunak komersial Windows non-vertikal.
bit-twiddler
1
C ++ seperti alat paling profesional yang dapat Anda gunakan untuk menulis perangkat lunak. Tetapi Anda harus terampil untuk menulis kode yang baik, karena cukup gratis dan memiliki beberapa kebiasaan untuk kompatibilitas. Saya pikir itu sangat cocok untuk semua jenis perangkat lunak kecuali scripting, sebenarnya. Masalahnya adalah kurva belajar. Dengan perpustakaan modern sangat kompeten bahkan pada produktivitas. Dan pikirkan bahwa jika aplikasi berhasil, Anda harus porting. Porting lebih mudah dengan basis kode C / C ++, lakukan untuk mengkompilasi ketersediaan. Daftar perangkat lunak yang ditulis dalam C ++ tidak ada habisnya: amazon, google, dropbox, telekomunikasi, game, facebook ...
Germán Diago
-4

Tidak, C ++ tidak dapat menggantikan C # karena semua aplikasi Windows Phone 8 non-Direct3D harus dikembangkan dengan C #. Anda tidak dapat mengembangkan dan menerbitkan aplikasi ke wp8 app store hanya dengan menggunakan C ++ atau HTML5 / Javascript. Dan selama Microsoft tidak menghapus batasan ini, C ++ tidak mengganti apa pun. Sebagai hasilnya, saya yakin sangat sedikit orang akan berkembang untuk WP8. Kasihan Nokia, kalah sekali lagi.

Berikut ini kutipan dari microsoft dev center :

Windows Phone 8 tidak mendukung XAML UI dengan model aplikasi kode C ++ di belakang yang didukung untuk aplikasi Windows Store.

lagi:

Apakah ini berarti bahwa saya tidak dapat menggunakan C ++ dengan XAML untuk mengembangkan aplikasi pada Windows PHone 8, apakah saya dibatasi untuk menggunakan C # + XAML?

Itu betul. XAML hanya dapat digunakan dengan C #. C ++ dapat digunakan untuk komponen WinRT yang digunakan oleh proyek C #.

Bahkan Microsoft MVP mengklaim bahwa rumor ini adalah informasi yang disengaja yang dibuat oleh Microsoft sendiri:

Saya suka apa yang dilakukan Microsoft dengan WinRT dan Windows Phone 8, tetapi saya berharap mereka tidak akan menjual lebih dari itu karena hal itu hanya akan membuat frustasi pengguna begitu mereka mengetahui kebenaran sepenuhnya dari masalah tersebut.

Dan kesalahan pemasaran yang disengaja ini menghabiskan bulan orang :

Pasti menyenangkan mengetahui BULAN INI JADI, sebelum saya pergi ke semua rute kode asli dengan aplikasi Metro saya.

Özgür
sumber
1
Kedua tautan Anda menyatakan bahwa Anda dapat menggunakan C ++ untuk pengembangan WP8, dan hanya XAML yang membutuhkan C #. Lebih jauh, Direct3D hanya didukung oleh C ++.
Lee
@Lee, bisakah Anda mengembangkan aplikasi non-Direct3D tanpa menggunakan C # untuk WP8?
Özgür