Διαφήμιση

Ο κόσμος του προγραμματισμού μπορεί να είναι δύσκολο να κατανοηθεί από τους ξένους. Για παράδειγμα, εάν δεν έχετε εμπειρία προγραμματισμού, ίσως να μην γνωρίζετε ποια γλώσσα είναι το καλύτερο για τους αρχάριους να μάθουν.

Ωστόσο, το παρανοήσεις σχετικά με τον προγραμματισμό προχωρήσουμε ακόμη περισσότερο. Αν και οι όροι όπως «μηχανικός λογισμικού», «προγραμματιστής ιστού» και «προγραμματιστής» απορρίπτονται, υπάρχουν κάποιες βασικές διαφορές σχετικά με τη δουλειά τους που πρέπει να γνωρίζετε. Ας εξετάσουμε τι κάνει τον προγραμματισμό και την ανάπτυξη ιστού τόσο πολύ διαφορετικό.

Διαφορετικές εστίες

Ενώ και οι δύο τύποι επαγγελματιών πληκτρολογούν γραμμές κώδικα για να κάνουν τα πράγματα να συμβούν σε έναν υπολογιστή, οι επικεντρώσεις τους είναι πολύ διαφορετικές. Οι προγραμματιστές ποικίλλουν σε ό, τι κάνουν, αλλά συνήθως δημιουργούν ολοκαίνουργιες εφαρμογές υπολογιστή ή προσθέτουν σε υπάρχον λογισμικό. Οι προγραμματιστές Ιστού, από την άλλη πλευρά, ασχολούνται ειδικά με τη δημιουργία και τη συντήρηση ιστότοπων.

Για να κατανοήσετε τη διάκριση, σκεφτείτε το ρόλο ενός σχεδιαστή Ιστού. Ο σχεδιαστής δημιουργεί το mock-up ενός ιστότοπου και μπορεί να σχεδιάσει το σύνολο χαρακτηριστικών του. Ωστόσο, αυτό το άτομο δεν χρειάζεται να γράψει κώδικα για να το επιτύχει. Μπορεί να χρησιμοποιούν προγράμματα όπως Adobe Dreamweaver για να αποκλείσετε τη σχεδίαση της ιστοσελίδας ή να δημιουργήσετε ένα μοντέλο στο Photoshop.

Οι προγραμματιστές ιστού γεφυρώνουν το χάσμα μεταξύ αυτών των σχεδιαστών και προγραμματιστών ιστοσελίδων. Ενώ ένας σχεδιαστής ιστοσελίδων έχει μια ιδέα για τον ιστότοπο, ο προγραμματιστής ιστού τον βασίζει στις προδιαγραφές τους. Σε αυτό το έργο, ο ρόλος του προγραμματιστή μπορεί να δημιουργεί ένα νέο εργαλείο για την επεξεργασία των αιτημάτων των επισκεπτών του ιστότοπου. Μακροπρόθεσμα, ένας προγραμματιστής θα προχωρούσε μετά την ολοκλήρωση της εφαρμογής του, ενώ ο προγραμματιστής ιστού θα ήταν πιθανώς υπεύθυνος για την ενημέρωση και τη συντήρηση του ιστότοπου.

Ένα άλλο σημαντικό σημείο είναι το εύρος της εργασίας κάθε επαγγελματία. Σε ένα επιχειρηματικό περιβάλλον, ένας προγραμματιστής μπορεί να αναλάβει την επέκταση ιδιόκτητου λογισμικού που μια εταιρεία έχει χρησιμοποιήσει για χρόνια.

σχεδιαστής ιστοσελίδων εναντίον προγραμματιστής ιστού: ποιος είσαι; #προγραμματιστής# προγραμματιστής#ιστός#Διαδίκτυοpic.twitter.com/2O8ndv7DME

- slidenerd (@slidenerdtech) 16 Ιουνίου 2015

Έτσι, μπορεί να ξοδέψουν πολύ χρόνο για να βρουν τον κώδικα για παλαιότερες εφαρμογές και να προσπαθήσουν να προσθέσουν νέες δυνατότητες σε αυτές, καθώς μια εταιρεία δεν θέλει να πετάξει λογισμικό απαραίτητο για την επιχείρησή της. Όσον αφορά τη σχεδίαση ιστότοπων, είναι σπάνιο να προσθέσετε χειρουργικά νέα ανταλλακτικά όταν μια εταιρεία θέλει έναν νέο ιστότοπο. Για ιστότοπους, είναι πιο αποτελεσματικό να ξεκινάτε από το μηδέν.

Χρησιμοποιούν διαφορετικές γλώσσες

Όπως ίσως γνωρίζετε, υπάρχουν δεκάδες διαφορετικές γλώσσες προγραμματισμού, όλες με διαφορετικά πλεονεκτήματα και σκοπούς. Κάποιος που δημιουργεί εφαρμογές για κινητά θα χρησιμοποιεί διαφορετική γλώσσα από ό, τι κάποιος που δημιουργεί μια εφαρμογή ιστού - έχουμε ήδη συζητήσει πώς να επιλέξετε τη σωστή γλώσσα προγραμματισμού ιστού.

Ένας προγραμματιστής ιστού χρησιμοποιεί HTML (που δεν είναι πραγματικά γλώσσα προγραμματισμού) για να οργανώσει κείμενο και CSS (επίσης όχι μια πραγματική γλώσσα προγραμματισμού) για να προσαρμόσει τον τρόπο εμφάνισης αυτού του κειμένου. Τότε αυτοί χρησιμοποιήστε JavaScript για εργασία από την πλευρά του πελάτη Τι είναι το JavaScript και μπορεί να υπάρχει το Διαδίκτυο χωρίς αυτό;Το JavaScript είναι ένα από αυτά τα πράγματα που πολλοί θεωρούν δεδομένο. Όλοι το χρησιμοποιούν. Διαβάστε περισσότερα (όπως να ελέγξετε αν έχετε αφήσει κενό το πεδίο κωδικού πρόσβασης κατά τη σύνδεση) και PHP για συμπεριφορά από την πλευρά του διακομιστή (όπως αναζήτηση ενός όρου που εισήγαγε ο χρήστης). Φυσικά, υπάρχουν και άλλες γλώσσες που χρησιμοποιούνται στην ανάπτυξη ιστού, όπως η Ruby.

Από την άλλη πλευρά, ένας προγραμματιστής θα μπορούσε να χρησιμοποιήσει οποιονδήποτε αριθμό γλωσσών για να δημιουργήσει την εφαρμογή που χρειάζεται. Ανάλογα με την κατάσταση, ένας προγραμματιστής θα μπορούσε να χρησιμοποιήσει C #, Java, C ++, Python, C ή οποιονδήποτε άλλο αριθμό επιλογών για τη δημιουργία μιας εφαρμογής.

Μια σημαντική επίπτωση αυτών των διαφορών είναι ότι οι προγραμματιστές Ιστού πρέπει να παρακολουθούν τακτικά τις αλλαγές στις γλώσσες που χρησιμοποιούν. Ένα βιβλίο για τον προγραμματισμό Ιστού που γράφτηκε το 2015 θα μπορούσε να είναι πολύ ξεπερασμένο μέχρι τώρα λόγω των ραγδαίων εξελίξεων σε αυτές τις γλώσσες. Έτσι, τα μαθήματα προγραμματισμού Ιστού διδάσκουν συχνά μέσω διαδικτυακών πόρων αντί για βιβλία.

Αντίθετα, ένα βιβλίο που γράφτηκε στο C το 1985 θα μπορούσε να είναι αρκετά αποτελεσματικό στη διδασκαλία των μαθητών της γλώσσας, επειδή δεν έχει αλλάξει πολύ τις δεκαετίες. Φυσικά, υπάρχουν μερικά στιλιστικά πρότυπα και βέλτιστες πρακτικές που μπορεί να χάσει ένας παλιός πόρος, αλλά πουθενά κοντά στο επίπεδο ανάπτυξης ιστού.

Διαφορές στην εφαρμογή

Ίσως να μην το πιστεύετε, αλλά οι γλώσσες που συζητήθηκαν παραπάνω εκτελούν πραγματικά πολύ διαφορετικές λειτουργίες πίσω από τα παρασκήνια.

Οι γλώσσες προγραμματισμού όπως η Java και το C ++ είναι γλώσσες υψηλού επιπέδου, πράγμα που σημαίνει ότι πληκτρολογείτε μια γραμμή Ο κώδικας C ++ αφαιρείται σε μεγάλο βαθμό από τις πραγματικές οδηγίες του μηχανήματος που μετατρέπονται σε μεταγλώττιση το. Το γράψιμο σε γλώσσες χαμηλού επιπέδου, όπως ο κωδικός συναρμολόγησης, θα ήταν εξαιρετικά κουραστικό και δύσκολο. Αυτά τα χαμηλότερα επίπεδα κώδικα σχετίζονται στενά με το υλικό, οπότε πρέπει να καθορίσετε τη μεταφορά δεδομένων εντός και εκτός συγκεκριμένων καταχωρητών μνήμης.

Για παράδειγμα, ρίξτε μια ματιά σε αυτό το παράδειγμα κωδικός συναρμολόγησης για να εκτυπώσετε "Γεια, Κόσμος" από τον ιστότοπο της επιστήμης υπολογιστών της LMU:

 καθολική ενότητα _start .text. _αρχή:; εγγραφή (1, μήνυμα, 13) mov rax, 1; η κλήση συστήματος 1 είναι εγγραφή mov rdi, 1; Η λαβή του αρχείου 1 είναι stdout mov rsi, μήνυμα; διεύθυνση συμβολοσειράς προς έξοδο mov rdx, 13; αριθμός byte syscall; επικαλέστε το λειτουργικό σύστημα για να κάνετε την εγγραφή. έξοδος (0) mov eax, 60; η κλήση συστήματος 60 είναι έξοδος xor rdi, rdi; κωδικός εξόδου 0 syscall; επίκληση του λειτουργικού συστήματος για έξοδο. μήνυμα: db "Γεια, Κόσμος", 10; σημειώστε τη νέα γραμμή στο τέλος. 

Στο C ++, η πληκτρολόγηση αυτής της απλής γραμμής θα είχε την ίδια λειτουργία:

std:: cout << "Γεια, Κόσμος"; 

Μπορούμε να δούμε ότι όταν ο τύπος κώδικα προγραμματιστών μεταγλωττιστεί πραγματικά, το μηχάνημα το επεξεργάζεται σε μορφή αναγνώσιμη από υπολογιστή για να δημιουργήσει μια εφαρμογή που λειτουργεί. Αυτό έρχεται σε αντίθεση με τα περισσότερα έργα ανάπτυξης ιστού, τα οποία δεν χρειάζεται να μεταγλωττιστούν. Υπάρχει η εξαίρεση ορισμένων "διαδικτυακών εφαρμογών" οι οποίες μεταγλωττίζονται και εκτελούνται στον διακομιστή ιστού αλλά εμφανίζονται στον υπολογιστή-πελάτη - αλλά αυτό είναι όπου η περιοχή μεταξύ προγραμματιστών εφαρμογών και προγραμματιστών ιστού αποκτά γκρί.

Επεξεργασία γλώσσας Ιστού

Νωρίτερα, το αναφέραμε αυτό HTML και CSS Μάθετε HTML και CSS με αυτά τα βήματα βήμα προς βήμαΕίστε περίεργοι για HTML, CSS και JavaScript; Εάν πιστεύετε ότι έχετε την ικανότητα να μάθετε πώς να δημιουργείτε ιστότοπους από το μηδέν - εδώ είναι μερικά σπουδαία βήματα βήμα προς βήμα που αξίζει να δοκιμάσετε. Διαβάστε περισσότερα δεν είναι αληθινές γλώσσες προγραμματισμού. Αντίθετα, HTML είναι μια γλώσσα σήμανσης Τι είναι το HTML5 και πώς αλλάζει τον τρόπο περιήγησής μου; [MakeUseOf Εξηγεί]Τα τελευταία χρόνια, μπορεί να έχετε ακούσει τον όρο HTML5 κάθε φορά. Είτε γνωρίζετε κάτι για την ανάπτυξη ιστού είτε όχι, η ιδέα μπορεί να είναι κάπως νεφελώδης και μπερδεμένη. Προφανώς,... Διαβάστε περισσότερα και το CSS είναι μια γλώσσα φύλλων στυλ. Η σύνταξή τους περιγράφει τι υπάρχει στη σελίδα και πώς είναι οργανωμένη (HTML) και πώς φαίνεται (CSS). Είναι για παρουσίαση, ενώ η γλώσσα προγραμματισμού είναι λειτουργικός. Μπορείτε να το δοκιμάσετε μόνοι σας - δημιουργήστε ένα κείμενο κειμένου στον υπολογιστή σας που ονομάζεται test.html με κάποιο βασικό κώδικα HTML, όπως:

Αυτό δείχνει γιατί Η HTML δεν είναι γλώσσα προγραμματισμού, αλλά μάλλον ένα σήμανση Γλώσσα.

Αποθηκεύστε το και ανοίξτε το στο πρόγραμμα περιήγησής σας της επιλογής σας, και θα δείτε ότι ο HTML που καθορίσατε έχει ήδη τεθεί σε ισχύ στο πρόγραμμα περιήγησής σας. Δεν συντάχθηκε κωδικός. το πρόγραμμα περιήγησής σας ξέρει πώς να ερμηνεύει HTML. Συγκρίνετε αυτό με ένα σύντομο πρόγραμμα C ++ που παράγει "Γεια!" στην οθόνη - δεν μπορείτε να κάνετε αυτόν τον κώδικα να κάνει τίποτα χωρίς έναν μεταγλωττιστή όπως θα βρείτε σε διαδικτυακά εργαλεία ή στο Visual Studio.

Εν συντομία

Είναι δίκαιο να το πούμε αυτό Οι προγραμματιστές ιστού είναι ένα υποσύνολο προγραμματιστών, επειδή υπάρχουν παρόμοιες μέθοδοι και δεξιότητες και για τις δύο θέσεις. Οι προγραμματιστές ιστού χρησιμοποιούν δεξιότητες και εργαλεία που δεν θα ήθελαν οι προγραμματιστές, όπως βοηθητικά προγράμματα γραφιστικής και λογισμικό επεξεργασίας βίντεο. Επίσης, οι προγραμματιστές ιστού συνήθως έρχονται σε επαφή με τους πελάτες τους πιο συχνά από έναν προγραμματιστή. Ένας προγραμματιστής δημιούργησε το Mozilla Firefox, αλλά ένας προγραμματιστής ιστού δημιούργησε το Mozilla.com.

Ένα άλλο καλό παράδειγμα του "The Dunning – Kruger effect": προγραμματιστής Vs. προγραμματιστής ιστού :) pic.twitter.com/cpyvSrZNU5

- Λένα (@photosheep_me) 14 Μαΐου 2014

Αν θέλετε να ξεκινήσετε με τον προγραμματισμό, Τα δωρεάν εργαλεία ανάπτυξης της Microsoft είναι ένα καλό μέρος για να ξεκινήσετε. Εάν κλίνει προς την ανάπτυξη ιστού, μπορούμε να σας βοηθήσουμε επιλέξτε μεταξύ ανάπτυξης ιστού front-end και back-end Front-End εναντίον Ανάπτυξη Ιστού Back-End: Ποια διαδρομή είναι κατάλληλη για εσάς;Η εκμάθηση της ανάπτυξης ιστού είναι ένας πολύ καλός τρόπος για να κατανοήσετε την κωδικοποίηση, αλλά από πού πρέπει να ξεκινήσετε: ανάπτυξη ιστού front-end ή back-end; Διαβάστε περισσότερα .

Ο Ben είναι αναπληρωτής συντάκτης και ο χορηγός Post Manager στο MakeUseOf. Είναι κάτοχος πτυχίου B.S. στα Πληροφοριακά Συστήματα Υπολογιστών από το Grove City College, όπου αποφοίτησε από τον Cum Laude και με το Honours στο μάθημα. Του αρέσει να βοηθάει τους άλλους και είναι παθιασμένος με τα βιντεοπαιχνίδια ως μέσο.