Rekayasa Perangkat Lunak

T&J untuk profesional, akademisi, dan siswa yang bekerja dalam siklus hidup pengembangan sistem

1
Memahami perbedaan: juru bahasa tradisional, JIT compiler, juru JIT dan AOT compiler
Saya mencoba memahami perbedaan antara penerjemah tradisional, kompiler JIT, interpreter JIT dan kompiler AOT. Seorang juru bahasa hanyalah sebuah mesin (virtual atau fisik) yang menjalankan instruksi dalam beberapa bahasa komputer. Dalam pengertian itu, JVM adalah juru bahasa dan CPU fisik adalah juru bahasa. Kompilasi Ahead-of-Time hanya berarti mengkompilasi kode ke …

6
Mengapa Java 8 tidak menyertakan koleksi tidak berubah?
Tim Java telah melakukan banyak pekerjaan untuk menghilangkan hambatan pemrograman fungsional di Jawa 8. Secara khusus, perubahan pada java.util Collections melakukan pekerjaan yang bagus untuk mengubah transformasi menjadi operasi yang mengalir sangat cepat. Mengingat betapa baiknya pekerjaan yang telah mereka lakukan dengan menambahkan fungsi kelas satu dan metode fungsional pada …




9
Apakah pengecualian sebagai aliran kontrol dianggap sebagai antipattern yang serius? Jika ya, mengapa?
Kembali di akhir 90-an saya bekerja sedikit dengan basis kode yang menggunakan pengecualian sebagai kontrol aliran. Ini menerapkan mesin negara hingga untuk menggerakkan aplikasi telepon. Akhir-akhir ini saya teringat akan hari-hari itu karena saya sudah melakukan aplikasi web MVC. Mereka berdua memiliki Controlleryang memutuskan ke mana harus pergi berikutnya dan …

16
Apakah ada cara untuk lebih cepat dalam menyelesaikan bug? Saya baru saja mendapat peringatan dari bos saya [ditutup]
Saya baru saja diberitahu oleh bos saya bahwa saya akan menerima tinjauan kinerja negatif pada hari Senin. Dia ingin berbicara kepada saya tentang mengapa saya sangat lambat dan mengapa tingkat perbaikan bug saya sangat rendah. Saya suka pemrograman dan menyelesaikan masalah tetapi saya benar-benar menemukan pekerjaan saya sangat sulit. Saya …

14
Tunjukkan kode buruk ke klien?
Seorang klien meminta saya untuk mendesain ulang situs web mereka, aplikasi ASP.NET Webforms yang dikembangkan oleh konsultan lain. Sepertinya pekerjaan yang relatif mudah, tetapi setelah melihat kode, jelas bukan itu masalahnya. Aplikasi ini tidak ditulis dengan baik. Sama sekali. Ini sangat rentan terhadap serangan injeksi SQL, logika bisnis tersebar di …


16
Kapan perbaikan bug menjadi berlebihan, jika pernah?
Bayangkan Anda membuat pemutar video dalam JavaScript. Pemutar video ini memutar video pengguna berulang kali menggunakan fungsi rekursif dan, karena itu, browser akan memicu suatu too much recursion RangeErrorsaat. Mungkin tidak ada yang akan menggunakan fitur loop sebanyak itu. Aplikasi Anda tidak akan pernah melempar kesalahan ini, bahkan jika pengguna …

10
Bagaimana saya harus menguji keacakan?
Pertimbangkan metode untuk mengacak elemen secara acak dalam array. Bagaimana Anda menulis unit test yang sederhana namun kuat untuk memastikan bahwa ini berhasil? Saya telah datang dengan dua ide, yang keduanya memiliki kelemahan nyata: Kocok array, lalu pastikan urutannya berbeda dari sebelumnya. Ini kedengarannya bagus, tetapi gagal jika shuffle terjadi …

11
Bagaimana peningkatan kompleksitas sistem memengaruhi generasi programmer yang berurutan?
Sebagai seorang programmer "baru" (saya pertama kali menulis sebaris kode pada tahun 2009), saya perhatikan relatif mudah untuk membuat program yang memperlihatkan elemen yang cukup kompleks hari ini dengan hal-hal seperti .NET framework misalnya. Membuat antarmuka visual, atau menyortir daftar dapat dilakukan dengan sangat sedikit perintah sekarang. Ketika saya belajar …

15
Apakah konstanta satu karakter lebih baik daripada literal?
Saya baru-baru ini menemukan kelas yang menyediakan hampir setiap karakter tunggal sebagai konstanta; semuanya dari COMMAsampai BRACKET_OPEN. Ingin tahu apakah ini perlu; Saya membaca "artikel" yang menunjukkan bahwa mungkin bermanfaat untuk menarik literal satu karakter ke dalam konstanta. Jadi, saya skeptis. Daya tarik utama menggunakan konstanta adalah mereka meminimalkan pemeliharaan …

3
Apa implikasi kehidupan nyata untuk lisensi Apache 2? [Tutup]
Saya ingin menggunakan SVG Edit untuk proyek. Perangkat lunak ini didistribusikan di bawah lisensi Apache 2. Saya pernah melihat itu: semua salinan, dimodifikasi atau tidak dimodifikasi, disertai dengan salinan lisensi semua modifikasi ditandai dengan jelas sebagai karya pengubah semua pemberitahuan tentang hak cipta, merek dagang, dan hak paten dibuat secara …

18
Bagaimana saya harus membebankan biaya untuk pemrograman hal-hal yang membutuhkan waktu dua menit untuk memperbaikinya? [Tutup]
Saya benar-benar bingung dengan ini. Saya percaya bahwa semakin saya mendapatkan pengalaman, semakin saya menjadi ahli dalam menemukan kesalahan dan memperbaikinya dengan cepat. Sekarang bos saya mendapatkan situs web dari seorang programmer yang melakukan pengkodean yang sangat buruk. Sekarang dia mengirimkan daftar masalah untuk diperbaiki. Misalkan itu masalah stylesheet, dan …
127 freelancing 

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.