Programista: Różnice pomiędzy wersjami

[wersja przejrzana][wersja nieprzejrzana]
Usunięta treść Dodana treść
PG (dyskusja | edycje)
drobne redakcyjne
Krav15 (dyskusja | edycje)
uporządkowanie tematyki wewnątrz poszczególnych sekcji, dodanie zdjęcia
Linia 1:
[[File:Coding Shots Annual Plan high res-5.jpg|thumb|300px|right|Programista pracujący dla Wikimedia Foundation]]
 
'''Programista''' – [[osoba]], która tworzy [[Program komputerowy|programy komputerowe]] w pewnym [[Język programowania|języku programowania]]. Termin ten może odnosić się także do specjalisty w jednej dziedzinie [[Programowanie|programowania]]. Większość programistów zna co najmniej kilka [[Język programowania|języków programowania]] (np. [[C (język programowania)|C]], [[C++]], [[Java]]), lecz specjalizuje się tylko w wybranych z nich. Nazwa głównego języka jest często dodawana do nazwy stanowiska, np. ''programista C++'', aby podkreślić specjalizację.
 
Mianem programistów określa się czasami projektantów oprogramowania, inżynierów oprogramowania czy analityków systemowych. Jest to jednak pewne uproszczenie, ponieważ zawody te wymagają wielu innych umiejętności, oprócz samego programowania. O ile podział ten jest dobrze zarysowany za granicą<ref>{{cytuj stronę | url = http://www.ericsink.com/No_Programmers.html | tytuł = No Programmers | autor = Eric Sink | data = 2003-05-09 | data dostępu = 2010-06-15 | język = en}}</ref><ref>{{cytuj stronę | url = http://codebetter.com/blogs/raymond.lewallen/archive/2005/02/22/55812.aspx | tytuł = Developer versus Programmer | autor = Raymond Lewallen | data = 2005-02-22 | data dostępu = 2010-06-15 | język = en}}</ref><ref>{{cytuj stronę | url = http://weblogs.asp.net/miked/archive/2006/10/13/_2200_Developers_2200_-and-_2200_Programmers_2200_.aspx | tytuł = "Developers" AND "Programmers" | autor = Mike Diehl | data = 2006-10-13 | data dostępu = 2010-06-15 | język = en}}</ref>, w Polsce panuje większa swoboda w wyborze nazw zawodu{{fakt|data=2010-06}}.
 
[[Dzień Programisty|Międzynarodowy Dzień Programisty]] jest obchodzony 13 września, a w roku przestępnym 12 września<ref>[http://www.internationalprogrammersday.org/ www.internationalprogrammersday.org]</ref>.
 
=== Historia ===
[[Plik:Ada Lovelace 1838.jpg|right|thumb|200px|[[Ada Lovelace]] jest uważana za pierwszą programistkę (osobę programującą) w dziejach.]]
 
PowszechnieCzęsto uważa się, że pierwszą programistką w historii była [[Ada Lovelace]]. W październiku 1842 roku jako pierwsza wyraziła ona [[algorytm]] w formie instrukcji przeznaczonych do wykonania na [[komputer]]ze, którym miała być [[maszyna analityczna]] budowana w XIX wieku przez [[Charles Babbage|Charlesa Babbage]]<ref>{{cytuj pismo | tytuł = Lovelace & Babbage and the creation of the 1843 'notes' | autor = J. Fuegi | autor2 = J. Francis | język = en | czasopismo = Annals of the History of Computing, IEEE | wolumin = 25 | wydanie = 4 | strony = 19-25}}</ref>. Ponieważ projekt nigdy nie został ukończony, nie mogła ona zweryfikować działania swojego programu. Pierwszą osobą, która stworzyła i uruchomiła program na komputerze był [[Konrad Zuse]] w 1941 roku. Z kolei Kay McNulty, Betty Jennings, Betty Snyder, Marlyn Wescoff, Fran Bilas oraz Ruth Lichterman pracujące przy projekcie [[ENIAC]] były pierwszymi etatowymi programistkami świata<ref>[http://eniacprogrammers.org eniacprogrammers.org]</ref>.
 
Metody pracy programistów ewoluują wraz z rozwojem techniki. Programowanie pierwszego amerykańskiego elektronicznego komputera [[ENIAC]] wiązało się z przełączaniem setek styków i obwodów elektrycznych między poszczególnymi modułami, co było czasochłonne i prowadziło do dużej liczby błędów. Niemiecki konstruktor [[Konrad Zuse]] w swoich pierwszych komputerach [[Z1]] oraz [[Z3]] z 1937 i 1941 roku zastosował z kolei wczytywanie kolejnych instrukcji programu z ośmiokanałowej taśmy perforowanej, którą należało wcześniej odpowiednio przygotować. Aż do lat 80. w powszechnym użyciu były [[Karta dziurkowana|karty dziurkowane]], na które programista wprowadzał kolejne partie kodu programu, a następnie ładował do pamięci komputera poprzez specjalny czytnik.
[[Dzień Programisty|Międzynarodowy Dzień Programisty]] jest obchodzony 13 września, a w roku przestępnym 12 września<ref>[http://www.internationalprogrammersday.org/ www.internationalprogrammersday.org]</ref>.
 
== Aspekty pracy programisty ==
=== Historia ===
[[Plik:Eniac.jpg|thumb|left|200px|Programowanie komputera [[ENIAC]] w latach 40. XX wieku.]]
 
Metody pracy programistów ewoluują wraz z rozwojem techniki. Programowanie pierwszego amerykańskiego elektronicznego komputera [[ENIAC]] wiązało się z przełączaniem setek styków i obwodów elektrycznych między poszczególnymi modułami, co było czasochłonne i prowadziło do dużej liczby błędów. Niemiecki konstruktor [[Konrad Zuse]] w swoich pierwszych komputerach [[Z1]] oraz [[Z3]] z 1937 i 1941 roku zastosował z kolei wczytywanie kolejnych instrukcji programu z ośmiokanałowej taśmy perforowanej, którą należało wcześniej odpowiednio przygotować. Aż do lat 80. w powszechnym użyciu były [[Karta dziurkowana|karty dziurkowane]], na które programista wprowadzał kolejne partie kodu programu, a następnie ładował do pamięci komputera poprzez specjalny czytnik.
 
Początkowo programiści tworzyli programy bezpośrednio w [[Język maszynowy|kodzie maszynowym]] danego komputera, operując sekwencjami liczb. Poszczególne komendy zaczęto szybko wyrażać w [[Asembler|językach asemblerowych]], w których zamiast liczbowego kodu rozkazu można było stosować ich symboliczną, czytelną nazwę (np. <code>ADD</code>). Przed uruchomieniem takiego programu należało przetłumaczyć nazwy poszczególnych rozkazów na ich reprezentację liczbową i w takiej postaci wprowadzić do pamięci maszyny.
Linia 23:
Wraz ze wzrostem stopnia złożoności programów nad projektem musiało pracować coraz więcej programistów, a jednocześnie musieli oni rozumieć dużo większą ilość kodu. Kolejna rewolucja nadeszła wraz z upowszechnieniem się [[Sieć komputerowa|sieci komputerowych]], które umożliwiły łatwiejsze dzielenie się swoimi poprawkami oraz pracę grupową.
 
== Aspekty pracy programisty ==
=== Praca programisty obecnie ===
Współcześni programiści pracują najczęściej w dobrze wyposażonych biurach lub laboratoriach komputerowych ze sprzętem niezbędnym do testowania aplikacji. Inżynierowie oprogramowania często podróżują, aby spotykać się z klientami. W powszechnym użyciu są [[Telekonferencja|telekonferencje]] oraz praca zdalna, ponieważ postęp technologiczny umożliwia wykonywanie coraz większej ilości zadań bez konieczności przebywania w biurze.