Saya telah melakukan C
dan C++
dan sekarang saya ingin memulai karir saya sebagai pengembang web . Saya membaca banyak tentang pengembangan web dan mengetahui bahwa ada dua jenis pengembang di web,
1. Client Side Developers.
2. Server Side Developers.
Saya ingin tetap fokus pada pengembangan sisi server . Saya berpikir bahwa akan lebih baik untuk memulai dengan dasar-dasar jadi saya mulai melakukan HTML
dan CSS
. Saya menemukan bahwa CSS
itu terlalu besar bagi seseorang untuk dikuasai dengan mudah. Saya ingin tahu bahwa dasar-dasar apa yang harus diketahui oleh pengembang sisi server dan haruskah ia menjadi ahli HTML dan CSS
atau hanya menghapusnya?
Jawaban:
Ini akan memperhatikan Anda untuk mengenal mereka dengan baik. Jika Anda adalah pengembang web, maka Anda adalah pengembang web. Anda harus dapat menulis aplikasi web secara independen, dan itu termasuk teknologi sisi klien.
sumber
Saya menganggap diri saya sebagai pengembang "sisi server".
Meskipun berada di "sisi belakang" pengembangan web, saya pikir sangat membantu untuk mengetahui dasar-dasar HTML dan CSS. Saya bekerja pada "sistem manajemen konten web" (WCMS), seperti Drupal, Day CQ, dan Liferay, dan sebagian besar persyaratan dan permintaan bisnis berkisar pada perubahan tampilan dan nuansa.
Tidak perlu menjadi "master" di HTML atau CSS, tetapi minimal, Anda harus tahu cara membuat halaman web statis, ditata dengan CSS. Anda harus mengetahui dasar-dasar formulir, dan berbagai mekanisme input. Untuk CSS, pahami perbedaan antara atribut ID dan CLASS, dan bagaimana penyeleksi bekerja. Banyak dari ini Anda akan mengambil dari waktu ke waktu.
Terakhir, buat beberapa pengetahuan tentang perbedaan browser yang umum. Sekali lagi, ini adalah pengetahuan yang akan Anda dapatkan dari waktu ke waktu, tetapi kenali bahwa ada perbedaan browser dan bersiaplah untuk mengenalinya.
sumber
Saya sebenarnya akan mengidentifikasi tiga segmen:
Anda akan membutuhkan pengetahuan menyeluruh tentang HTML dan CSS. Pembagian kerja antara sisi server dan sisi klien / pengembang desain biasanya mengharuskan pengembang sisi server menyediakan HTML yang dihasilkan oleh basis data dan interaksi pemrograman. HTML itu juga membawa pengidentifikasi CSS, sehingga dapat dimanipulasi oleh pengembang atau perancang sisi klien.
Pekerjaan Anda sebagai pengembang sisi server biasanya untuk memasok markup HTML / CSS ke dua lainnya. Bertujuan untuk penguasaan penuh baik HTML dan CSS.
sumber
Anda perlu mengetahui HTML + CSS, karena itu penting dan tidak sulit dipelajari. Anda akan menghadapi kesulitan saat mencoba untuk mengatur CSS untuk semua browser, tetapi Anda harus mengetahuinya, karena Anda kadang-kadang perlu membuat HTML menggunakan sisi server.
Anda dapat mulai mempelajarinya dengan membuat blog Anda sendiri. Jika tidak ada yang perlu di blog, Anda bisa membuat blog tentang pelajaran Anda.
sumber
Eh, saya tidak mengerti mengapa orang tidak mengerti. Tidak ada kode front-end dengan situs web. Ini semua kode back-end. Kode front-end adalah browser, jadi kecuali Anda bekerja di Mozilla atau IE atau Chromium / google atau safari, Anda sedang menulis kode sisi server. Begini cara kerjanya: Browser meminta file dari server web. Server web mengeluarkan file. Browser mengartikan file itu dan dapat meminta file tambahan (gambar, javascript, css, dll) dan menafsirkan file-file itu, sampai semua file telah ditafsirkan.
Sekarang, file pertama yang diminta oleh browser ini adalah file html. File html diuraikan dan browser memutuskan bagaimana membuat kontennya. Jadi salah satu konsep penting untuk dipertahankan di sini adalah bahwa file html dikonsumsi oleh parser.
Server web adalah perangkat lunak yang mendengarkan pada port dan memproses permintaan untuk file. Jika file tersebut adalah file statis (maksud kami statis di sini dalam arti bahwa file tersebut sudah dibuat) maka itu hanya disalin apa adanya ke klien yang meminta. Jika file tersebut dinamis, artinya dibuat setiap kali file diminta, server web meminta file yang akan dihasilkan oleh perangkat lunak yang menghasilkan file (baik proses yang berjalan, perpustakaan yang dimuat, atau memunculkan proses) dan perangkat lunak yang menghasilkan file dan mengirimkannya ke server web, yang, pada gilirannya, mengirimkannya ke klien.
Setelah file itu telah "disajikan" ke klien dan diuraikan, klien dapat meminta jenis file lain, seperti file json, di mana ia dapat mem-bypass penguraian oleh penyaji html dan alih-alih mengembalikan file tersebut ke penerjemah javascript yang berjalan di klien, dan ini diurai (eval adalah bentuk penguraian) dengan javascript. Inilah yang menjadi dasar AJAX.
Sekarang, bagaimana ini memengaruhi Anda? Jika ada file di server yang dihasilkan secara dinamis, maka ada perangkat lunak yang berjalan di server yang memberi tahu cara menghasilkan file. Orang-orang yang memprogram perangkat lunak ini dianggap sebagai pemrogram "server-side".
File-file html ini, dihasilkan di server, akan memberi tahu browser apa file lain yang akan dimasukkan, sehingga javascript dan gambar serta css perlu diimpor, diatur, dan jika tidak diatur oleh file html yang dihasilkan.
Banyak kerangka kerja web, dan berani saya katakan, metodologi (MVC et al) telah dikembangkan untuk membuat batas antara karya "sisi server" yang murni, dan karya "sisi klien".
Saya lupa menyebutkan, oh sayang, data orang-orang. Orang-orang penyimpanan data bahkan lebih banyak sisi server daripada penulis perangkat lunak penghasil file html sisi server. Penyimpanan data, apakah basis data relasional, NoSQL, atau lainnya, adalah hal yang sama sekali berbeda. Saya menyebutkan ini karena kerangka kerja dan metodologi Big-Vendor-touted (MVC et al lagi) tampaknya membuatnya mudah untuk hanya "cukup berani pada".
Woah, jawaban yang agak gondrong.
Saya membuat jawaban yang tampaknya kasar untuk menantang pernyataan Anda bahwa ada pengembang sisi server dan pengembang sisi klien. Jika Anda mengirimkan sistem informasi Anda melalui situs web, semuanya harus disimpan, diatur, dan dikelola di server. Dan itu adalah kekacauan besar, dan kecuali Anda benar-benar mempelajari cara kerjanya, Anda akan memiliki waktu yang sangat lama untuk membuatnya bekerja dengan baik. Jadi semuanya sisi server.
sumber
+1 untuk pertanyaan. Saya juga selalu berpikir bahwa pengkodean sisi server lebih menarik dan penting daripada melakukan html + css + js + ajax + .. dan banyak hal. Bagaimanapun, jika Anda sendirian dan ingin membuat aplikasi web sendiri, Anda harus menjadi programmer sisi server dan perancang + (klien sisi klien). Itu sebabnya sekarang saya sedang belajar HTML5 dan CSS3.
sumber
Sebenarnya itu tergantung. Dalam kebanyakan kasus, Anda harus tahu HTML & CSS. Dalam kasus yang jarang terjadi, Anda dapat mengabaikan keduanya.
Kasus 1
Di perusahaan saya, ada proyek dengan pemisahan ketat antara HTML & CSS dan segala sesuatu yang berkaitan dengan sisi server . Ini memungkinkan untuk menghadirkan pengembang C # atau PHP terbaik di satu sisi, dan pengembang HTML, CSS & JavaScript terbaik di sisi lain. Konkretnya, pengembang sisi server menghasilkan untuk setiap halaman objek sisi server yang berisi semua yang kita butuhkan untuk menampilkan halaman; objek-objek tersebut kemudian diserialisasi ke XML. Pengembang sisi klien mengambil objek-objek itu dan mengubahnya menjadi XHTML dengan XSLT.
Karena itu, saya tidak pernah melihat pendekatan ini di perusahaan lain. Juga, ia memiliki banyak keterbatasan dan bahkan jika itu sempurna dalam beberapa kasus, itu tidak berfungsi sama sekali dalam banyak hal lain.
Kasus 2
Ketika, di situs web kecil, pengembang dan desainer bekerja sama, tidak ada konsensus tentang siapa yang menulis HTML & CSS. Anda harus memutuskan untuk setiap proyek, sesuai dengan keterampilan kedua orang yang terlibat. Bahkan jika dalam banyak kasus, itu adalah pengembang yang berurusan dengan HTML & CSS, Anda juga dapat menemukan beberapa desainer yang tahu HTML & CSS dengan sangat baik . Dalam hal ini, jika maksud Anda adalah untuk mengerjakan proyek-proyek kecil dan hanya dengan desainer seperti itu, Anda tidak harus belajar HTML / CSS.
Kasus 3
Pada proyek yang lebih besar, bukan hal yang aneh untuk mempekerjakan orang yang berdedikasi untuk menulis kode HTML & CSS berdasarkan karya desainer dan pengembang sisi server. Biasanya ide yang baik untuk melakukannya, karena Anda tidak ingin membayar $ 100 per jam untuk pengembang C # berpengalaman untuk benar-benar menulis HTML; itu hanya buang-buang waktu dan uang.
Karena itu, kasus-kasus itu bukan yang paling sering. Jadi fokuslah pada pengembangan sisi server, tetapi cobalah untuk belajar HTML & CSS juga. Pengetahuan tambahan tidak pernah sakit.
sumber
Terkadang, terutama di awal, Anda akan bekerja sendiri pada sebuah proyek dan harus melakukan front-end dan back-end. Dalam hal ini, Anda memerlukan setidaknya pengetahuan dasar tentang HTML dan CSS. Anda tidak harus menjadi perancang hebat, Anda hanya perlu mendapatkan informasi dari backend Anda terlihat di browser Anda sehingga Anda dapat menguji sesuatu.
sumber
Sebenarnya, itu semua tergantung. Jika Anda terlibat dalam hal pemrograman perangkat lunak server, pastikan Anda tahu cara-cara standar para pengguna web tingkat tinggi (HTML / CSS) harus dapat berinteraksi dengan aplikasi Anda. Namun, jika Anda berencana melakukan banyak pekerjaan yang terkait erat dengan HTML / CSS maka Anda harus tahu HTML dan CSS dengan cukup baik. Bagaimanapun, selalu baik untuk mengetahui beberapa teknologi tambahan. Saya seorang programmer asli dan bahkan saya tahu HTML / CSS cukup untuk membuat situs web yang tampak layak. Yang sedang berkata, saya hanya mempelajarinya sehingga saya bisa belajar AJAX untuk menulis beberapa add-on Chrome / Firefox.
sumber