Modul 1: Asas Pengaturcaraan & Aptitud
Soalan Asas:
- Apakah pembolehubah, dan mengapa ia penting dalam pengaturcaraan?
- Terangkan perbezaan antara gelung while dan for.
- Apakah itu subarray? Berikan contoh.
- Tentukan kerumitan masa dan terangkan tatatanda Big-O.
- Apakah pemalar, dan bagaimanakah ia berbeza daripada pembolehubah?
- Terangkan perbezaan antara nilai lulus dan rujukan lulus dengan contoh.
- Bagaimanakah anda mengira kerumitan masa gelung?
Soalan Berasaskan Senario:
- Bagaimanakah anda akan mengoptimumkan gelung bersarang jika anda menghadapi masalah prestasi?
- Terangkan situasi di mana anda akan memilih ulangan daripada lelaran.
- Memandangkan tatasusunan yang diisih, bagaimanakah anda boleh mencari dengan cekap jika nombor wujud di dalamnya?
- Jika anda perlu memproses tatasusunan yang besar dengan berjuta-juta elemen, bagaimanakah anda akan meminimumkan penggunaan memori?
- Diberi nombor, tentukan sama ada ia nombor perdana tanpa menggunakan fungsi perpustakaan.
- Anda perlu mereka bentuk algoritma untuk mencari elemen kedua terbesar dalam tatasusunan. Bagaimana anda akan mendekati perkara ini?
Cabaran Pengekodan:
- Tulis atur cara untuk mencari jumlah maksimum subarray menggunakan algoritma Kadane.
- Diberi dua nombor, tulis fungsi untuk menukar nilainya tanpa menggunakan pembolehubah ketiga.
- Laksanakan fungsi untuk mengira pemfaktoran nombor menggunakan kedua-dua rekursi dan lelaran.
- Tulis atur cara untuk menyemak sama ada rentetan yang diberikan ialah palindrom.
- Laksanakan fungsi untuk memutar tatasusunan ke kanan dengan k kedudukan.
- Tulis fungsi untuk mencari nombor yang hilang dalam tatasusunan integer yang diberikan daripada 1 hingga n.
Modul 2: Struktur & Algoritma Data Asas
** Soalan Asas:**
- Apakah perbezaan antara Array dan ArrayList?
- Terangkan cara StringBuilder meningkatkan prestasi berbanding rentetan biasa
penyatuan.
- Apakah kelebihan menggunakan pernyataan suis berbanding if-else?
- Apakah perbezaan antara Array dan Senarai Terpaut?
- Terangkan konsep pengisihan. Namakan beberapa algoritma pengisihan biasa.
- Apakah kelebihan menggunakan StringBuffer berbanding String dalam Java?
** Soalan Berasaskan Senario:**
- Memandangkan senarai nama, bagaimana anda mengisihnya mengikut abjad menggunakan
algoritma anda sendiri?
- Jika anda mempunyai fail teks yang besar, bagaimanakah anda boleh mengira kejadian setiap perkataan dengan cekap?
- Bincangkan cara mengendalikan ingatan apabila berurusan dengan ArrayLists yang berkembang secara dinamik.
- Bagaimanakah anda mengalih keluar elemen pendua daripada tatasusunan yang tidak diisih?
- Memandangkan dua tatasusunan yang diisih, tulis fungsi untuk menggabungkannya menjadi satu tatasusunan yang diisih.
- Jika anda diberi tatasusunan diisih yang diputar pada pangsi yang tidak diketahui, bagaimanakah anda akan mencari elemen dengan cekap?
Cabaran Pengekodan:
- Tulis atur cara untuk membalikkan rentetan tanpa menggunakan fungsi terbina dalam.
- Laksanakan isihan gelembung untuk mengisih tatasusunan integer.
- Diberi perenggan, tulis fungsi untuk mencari perkataan yang paling kerap muncul.
- Laksanakan fungsi untuk menyemak sama ada dua rentetan adalah anagram antara satu sama lain.
- Tulis atur cara untuk mencari aksara tidak berulang pertama dalam rentetan.
- Bangunkan fungsi untuk melaksanakan isihan sisipan pada tatasusunan integer.
Modul 3: Pengenalan kepada HTML & CSS
Soalan Asas:
- Apakah perbezaan antara elemen peringkat blok dan sebaris dalam HTML?
- Terangkan Model Kotak dalam CSS.
- Apakah tujuan menggunakan Bootstrap dalam pembangunan web?
- Apakah elemen HTML semantik, dan mengapa ia penting?
- Bagaimanakah sifat kedudukan berfungsi dalam CSS? Terangkan statik, relatif, mutlak dan tetap.
- Apakah perbezaan antara id dan kelas dalam HTML/CSS?
Soalan Berasaskan Senario:
- Bagaimanakah anda mereka bentuk reka letak responsif untuk halaman web?
- Memandangkan borang dengan beberapa input, bagaimana anda akan menggayakannya untuk kebolehgunaan dan kebolehaksesan?
- Bincangkan bagaimana anda akan nyahpepijat peraturan CSS yang tidak digunakan seperti yang diharapkan.
- Bagaimanakah anda membuat bar navigasi responsif menggunakan HTML dan CSS?
- Terangkan kaedah untuk memusatkan div secara menegak dan mendatar dalam elemen induk.
- Anda perlu menggayakan jadual supaya baris berselang-seli mempunyai warna yang berbeza. Bagaimanakah anda melakukan ini dalam CSS?
Cabaran Pengekodan:
- Buat halaman web ringkas dengan bar navigasi, bahagian kandungan dan pengaki menggunakan HTML dan CSS.
- Bina borang dengan pengesahan input menggunakan atribut HTML dan gaya CSS.
- Reka bentuk reka letak grid responsif menggunakan Flexbox atau Grid CSS.
- Buat halaman web dengan borang hubungan yang menggunakan pengesahan HTML5 yang betul.
- Reka bentuk halaman blog ringkas dengan pengepala, bahagian kandungan dan pengaki menggunakan HTML dan CSS.
- Bina reka letak grid responsif dengan tiga lajur yang disusun secara menegak pada skrin kecil.
Modul 4: Javascript Asas
Soalan Asas:
- Apakah perbezaan antara var, let dan const dalam JavaScript?
- Terangkan cara JavaScript mengendalikan operasi tak segerak.
- Apakah Model Objek Dokumen (DOM)?
- Apakah jenis data JavaScript? Berikan contoh setiap satu.
- Terangkan konsep kejadian menggelegak dan cara mencegahnya.
- Apakah perbezaan antara undefined dan null dalam JavaScript?
Soalan Berasaskan Senario:
- Bagaimanakah anda mengendalikan situasi di mana klik butang mencetuskan berbilang acara?
- Bincangkan cara anda mengambil data daripada API dan memaparkannya pada halaman web.
- Terangkan cara anda mengurus ralat dalam kod tak segerak.
- Bagaimanakah anda akan melaksanakan fungsi untuk mengesahkan kata laluan yang memenuhi kriteria tertentu (panjang, aksara khas, dll.)?
- Bincangkan cara anda mengendalikan senario apabila panggilan API gagal.
- Bagaimanakah anda membuat menu lungsur turun yang dibuka dan ditutup pada klik menggunakan JavaScript?
Cabaran Pengekodan:
- Tulis atur cara untuk mengira bilangan vokal dalam rentetan tertentu.
- Laksanakan fungsi untuk meratakan tatasusunan integer bersarang.
- Bina aplikasi senarai tugasan yang mudah dengan fungsi tambah dan padam.
- Tulis fungsi untuk mengalih keluar semua pendua daripada tatasusunan integer.
- Buat aplikasi jam randik yang ringkas menggunakan JavaScript.
- Laksanakan fungsi untuk mencari perkataan terpanjang dalam ayat tertentu.
Modul 5: JavaScript Lanjutan
** Soalan Asas:**
- Apakah penutupan dalam JavaScript? Berikan contoh.
- Terangkan konsep pewarisan prototaip.
- Apakah perbezaan antara kod segerak dan tak segerak?
- Apakah objek Peta dan Tetapkan dalam JavaScript, dan bagaimanakah ia berbeza daripada objek dan tatasusunan biasa?
- Terangkan kata kunci ini dalam JavaScript. Bagaimanakah ia berkelakuan dalam konteks yang berbeza?
- Apakah perbezaan antara kaedah apply(), call() dan bind()?
Soalan Berasaskan Senario:
- Bagaimanakah anda mengendalikan senario di mana berbilang API perlu dipanggil mengikut turutan?
- Bincangkan cara anda mengoptimumkan pangkalan kod JavaScript yang besar untuk prestasi.
- Terangkan cara anda menggunakan localStorage atau sessionStorage untuk mengurus data pengguna.
- Bagaimanakah anda akan melaksanakan fungsi untuk mendikit atau menyahlantunkan panggilan API yang kerap dalam aplikasi web?
- Anda ditugaskan untuk mereka bentuk komponen lungsur turun yang boleh diguna semula. Bagaimanakah anda akan menggunakan ciri ES6 untuk melaksanakannya?
- Terangkan cara anda mengendalikan data yang diambil daripada API di mana satu panggilan bergantung pada hasil panggilan yang lain.
Cabaran Pengekodan:
- Tulis fungsi untuk mengklon dalam objek JavaScript.
- Laksanakan fungsi berasaskan janji untuk mensimulasikan panggilan API.
- Bina apl cuaca ringkas menggunakan data daripada API awam.
- Tulis fungsi yang meratakan tatasusunan integer bersarang dalam.
- Laksanakan sistem asas pub-sub (publish-subscribe) dalam JavaScript.
- Buat fungsi yang melaksanakan versi mudah kaedah Promise.all.
Modul 6: React & Redux
Soalan Asas:
- Apakah perbezaan antara keadaan dan prop dalam React?
- Terangkan aliran data Redux.
- Bagaimana anda mengendalikan borang dalam React?
- Apakah itu JSX, dan bagaimana ia berbeza daripada JavaScript biasa?
- Terangkan kaedah kitaran hayat komponen kelas React.
- Bagaimana anda menguruskan kesan sampingan dalam aplikasi React?
Soalan Berasaskan Senario:
- Bagaimanakah anda akan mengoptimumkan aplikasi React dengan komponen pemaparan perlahan?
- Bincangkan cara anda melaksanakan pengesahan dalam apl React-Redux.
- Bagaimanakah anda mengurus keadaan global dalam aplikasi React yang besar?
- Bagaimanakah anda akan mengoptimumkan komponen React yang menghasilkan senarai item yang besar?
- Bincangkan cara anda mengendalikan pengesahan pengguna dalam aplikasi React-Redux.
- Bagaimanakah anda memfaktorkan semula komponen dengan keadaan yang berlebihan dan bersandar kepada struktur yang lebih mudah diurus?
Cabaran Pengekodan:
- Bina apl pembilang ringkas dengan butang kenaikan dan pengurangan menggunakan React.
- Laksanakan senarai tugasan dengan Redux untuk pengurusan negeri.
- Buat apl React dengan penghalaan untuk sekurang-kurangnya tiga halaman.
- Buat apl React untuk memaparkan senarai item yang diambil daripada API.
- Laksanakan komponen pembilang dengan kefungsian kenaikan, pengurangan dan penetapan semula menggunakan React dan Redux.
- Bina apl carian filem ringkas yang mengambil hasil daripada API berdasarkan input pengguna.
Modul 7: Pembangunan Bahagian Belakang dalam Node.js
Soalan Asas:
- Apakah perbezaan antara permintaan GET dan POST?
- Terangkan perisian tengah dalam Node.js.
3.Apakah itu MongoDB, dan mengapakah ia biasa digunakan dalam pembangunan web?
- Apakah perbezaan antara kod menyekat dan tidak menyekat dalam Node.js?
- Terangkan konsep perisian tengah dalam Express.js.
- Apakah itu REST API? Apa bezanya dengan SOAP?
Soalan Berasaskan Senario:
- Bagaimana anda mengendalikan ralat dalam API REST?
- Bincangkan bagaimana anda akan melaksanakan penomboran untuk pertanyaan pangkalan data.
- Terangkan cara anda mereka bentuk sistem pengesahan pengguna dengan JWT.
- Bagaimanakah anda melindungi API REST untuk menghalang akses tanpa kebenaran?
- Anda perlu mengendalikan muat naik fail dalam aplikasi Node.js. Bagaimana anda akan mendekati perkara ini?
- Terangkan cara anda mereka bentuk API untuk mengambil data bernombor daripada pangkalan data.
Cabaran Pengekodan:
- Bina REST API untuk mengurus senarai tugasan.
- Tulis skrip Node.js untuk membaca dan menulis data ke koleksi MongoDB.
- Laksanakan perisian tengah untuk log butiran permintaan untuk pelayan Express.
- Bina API Ekspres dengan operasi CRUD untuk mengurus senarai tugas.
- Laksanakan perisian tengah untuk melog semua permintaan masuk dengan cap masa.
- Buat titik akhir API yang menerima parameter pertanyaan dan mengembalikan data yang ditapis daripada koleksi MongoDB.
Modul 8: Projek Capstone
Soalan Asas:
- Apakah pertimbangan utama semasa membina aplikasi tindanan penuh?
- Terangkan cara anda menggunakan aplikasi web.
- Apakah beberapa cabaran biasa dalam menyepadukan bahagian hadapan dan bahagian belakang?
- Apakah cabaran yang anda jangkakan apabila menyepadukan sistem bahagian hadapan dan bahagian belakang?
- Bagaimana anda memutuskan pangkalan data (SQL atau NoSQL) yang hendak digunakan untuk projek?
- Apakah alatan atau rangka kerja yang akan anda gunakan untuk menggunakan aplikasi tindanan penuh?
Soalan Berasaskan Senario:
- Bagaimanakah anda menyahpepijat isu apabila panggilan API bahagian hadapan mengembalikan ralat yang tidak dijangka?
- Bincangkan cara anda melaksanakan pemberitahuan masa nyata dalam apl tindanan penuh.
- Terangkan bagaimana anda akan menskalakan aplikasi anda untuk mengendalikan peningkatan trafik.
- Bagaimanakah anda menyahpepijat isu perkongsian sumber silang (CORS) dalam aplikasi anda?
- Bincangkan cara anda mengendalikan kemas kini masa nyata dalam aplikasi kerjasama.
- Terangkan cara anda mengurus pembolehubah persekitaran untuk peringkat penggunaan yang berbeza (pembangunan, pementasan, pengeluaran).
Cabaran Pengekodan:
- Bina apl e-dagang tindanan penuh dengan fungsi penyenaraian produk, troli dan pembayaran.
- Buat platform blog dengan ciri pengesahan pengguna, pembuatan siaran dan ulasan.
- Bangunkan apl pengurusan tugasan dengan ciri seperti peranan pengguna, tugasan tugasan dan penjejakan kemajuan.
- Buat platform blog yang membolehkan pengguna membuat, mengedit, memadam dan melihat siaran. Sertakan bahagian belakang untuk menyimpan siaran dan bahagian hadapan untuk memaparkannya.
- Bina tapak e-dagang asas dengan pengesahan pengguna, penyenaraian produk dan troli beli-belah.
- Membangunkan aplikasi pengurusan tugasan dengan akses berasaskan peranan dan kemas kini masa nyata menggunakan WebSockets.
Atas ialah kandungan terperinci Soalan Temuduga Biasa JavaScript dan React.js. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!