<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="fi">
	<id>https://wikikko.info/w3/index.php?action=history&amp;feed=atom&amp;title=Ohjelmointi</id>
	<title>Ohjelmointi - Muutoshistoria</title>
	<link rel="self" type="application/atom+xml" href="https://wikikko.info/w3/index.php?action=history&amp;feed=atom&amp;title=Ohjelmointi"/>
	<link rel="alternate" type="text/html" href="https://wikikko.info/w3/index.php?title=Ohjelmointi&amp;action=history"/>
	<updated>2026-06-21T08:02:14Z</updated>
	<subtitle>Tämän sivun muutoshistoria</subtitle>
	<generator>MediaWiki 1.45.3</generator>
	<entry>
		<id>https://wikikko.info/w3/index.php?title=Ohjelmointi&amp;diff=678&amp;oldid=prev</id>
		<title>91.154.136.164 (11. syyskuuta 2016 kello 11.59)</title>
		<link rel="alternate" type="text/html" href="https://wikikko.info/w3/index.php?title=Ohjelmointi&amp;diff=678&amp;oldid=prev"/>
		<updated>2016-09-11T11:59:10Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Uusi sivu&lt;/b&gt;&lt;/p&gt;&lt;div&gt;Ohjelmoinnissa ohjelmoija kirjoittaa haluamansa komennot peräkkäin tietokkoneen suoritettavaksi. Ohjelmia voi kirjoittaa esim. tekstieditorilla (esim. muistio), ohjelmointieditorilla (sisältää syntaksin korostuksen, esim. Notepad++ tai Sublime Text 2) tai ohjelmointiympäristön editorilla. Tietokone on sinänsä fiksu kampe, että se tekee juuri täsmälleen niin kuin on käsketty. Joten yleensä kun kuulee sanottavan että &amp;#039;tietokone ei toimi&amp;#039;, se tarkoittaa että käyttäjä ei ymmärrä mitä tietokone tarkoittaa. Näin saattaa käydä silloin, jos käyttäjä käyttää ohjelmaa toisin kuin mitä ohjelmoija on ajatellut (testaus ja määrittely) tai että ohjelmoija on olettanut käyttäjän tietävän jonkin asian, jota käyttäjä ei tiedäkkään (käytettävyyssuunnittelu). Tämän lisäksi on toki olemassa bugeja ohjelmissa sekä laitteistovikoja, mutta nämä ovat aika pieni osa kaikista &amp;#039;vioista&amp;#039;.&lt;br /&gt;
&lt;br /&gt;
Nykypäivänä ohjelmointi usein tapahtuu jonkun ohjelmointiympäristön kautta. Ohjelmointiympäristö on tarkoitusta varten suunniteltu ohjelma, joka auttaa ohjelmoijaa rutiiniluontoisissa tehtävissä, ohjelmaa kirjoitettaessa. Ohjelmnointiympäristöt eivät suinkaan tarkoita, että ohjelmoijan ei tarvitsisi osata ohjelmoinnin perustetita, päin vastoin. Ohjelmointiympäristöä käytettäessä ohjelmoija yleensä keskittyy vain tiettyyn osaan ohjelmasta, jolloin paljon mutta jää &amp;#039;piiloon&amp;#039; ympäristön sisään, jolloin dokumentoinnin ja ohjelmointikäytänteiden ymmärtäminen korostuu. Esimerkiksi ohjelmistoyrityksessä kehitettävän ohjelman tietty osa, eli ominaisuus, on voitu antaa tehtäväksi yhdelle ohjelmoijalle. Tällöin ohjelmoija kirjoittaa suunnitelman mukaisesti muihin ohjelman kirjastoihin yhteensopivan uuden [https://fi.wikipedia.org/wiki/Kirjasto_(tietotekniikka) kirjaston] ja sen sisältämät luokat (eli metodeja ja parametrejä), jotka sisältävät kyseisen ominaisuuden vaatimat toiminnot.&lt;br /&gt;
&lt;br /&gt;
Jokaisen ohjelmoijan on kuitenkin aloitettava perusteista. Alla on joitain resursseja, jotka voivat avittaa alkuun pääsemistä ohjelmointiharrastuksessasi tai -urassasi. &lt;br /&gt;
&lt;br /&gt;
==Erilaisia ohjelmointikieliä==&lt;br /&gt;
*[https://fi.wikipedia.org/wiki/BASIC Basic] &amp;#039;&amp;#039;&amp;#039;Beginner&amp;#039;s All-purpose Symbolic Instruction Code&amp;#039;&amp;#039;&amp;#039; vuodelta 1964.&lt;br /&gt;
*[https://fi.wikipedia.org/wiki/Visual_Basic Visual Basic]&lt;br /&gt;
*[https://fi.wikipedia.org/wiki/Assembly_(ohjelmointikieli) Assembly tai assembler] Lähellä konelieltä oleva ohejlmointikieli.&lt;br /&gt;
*[https://fi.wikipedia.org/wiki/Lisp Lisp] [https://fi.wikipedia.org/wiki/Funktionaalinen_ohjelmointi Funktionaalisen ohjelmoinnin] yksi tunnetuimpia ohjelmointikieliä.&lt;br /&gt;
*[https://fi.wikipedia.org/wiki/C_(ohjelmointikieli) C-kieli], [https://fi.wikipedia.org/wiki/C%2B%2B C++] Proseduraalisen ohjelmoinnin peruskieliä. Unix ja käyttöjärjestelmäydinten maailmassa suosittu.&lt;br /&gt;
*[https://fi.wikipedia.org/wiki/C_sharp C#] (lausutaan: C sharp) C- kieleen pohjautuva ohejlmointikieli.&lt;br /&gt;
*[https://fi.wikipedia.org/wiki/Objective-C Objective-C] Applen käyttämä c- kielen johdannaninen.&lt;br /&gt;
*[https://fi.wikipedia.org/wiki/PHP PHP] Web palvelimien perinteinen ohjelmointilieli.&lt;br /&gt;
*[https://fi.wikipedia.org/wiki/Java Java] Työpöytä- ja web-sovelluksissa sekä android -käyttöjärjestelmän käyttämä ohjelmointikieli.&lt;br /&gt;
*[https://fi.wikipedia.org/wiki/Python_(ohjelmointikieli) Python] Työpöytäkäytössä skriptauskielenä tunnettu ohjelmointikieli. Monet suosittelevat Pythonia ensimmäiseksi ohjelmointikieleksi sen yksinkertaisen syntaksin ja korkean tason tietorakenteiden ansiosta. Kuitenkin, esim. dynaaminen tyypitys tai lauseen päätösmerkkien puuttuminen saattaa aiheuttaa päänvaivaa myöhemmissä vaiheissa. Käytetään myös mm. [https://en.wikipedia.org/wiki/Django_(web_framework) Django] palvelinohjelmistossa.&lt;br /&gt;
*[https://fi.wikipedia.org/wiki/JavaScript JavaScript] Web sivujen toiminnallusuus on usein toteutettu javaScriptillä. Käytetään myös mm. [https://en.wikipedia.org/wiki/Node.js Node.JS] palvelinohjelmistossa.&lt;br /&gt;
*[https://fi.wikipedia.org/wiki/Ruby Ruby] Käytetään mm. [https://fi.wikipedia.org/wiki/Ruby_on_Rails Ruby on Rails] palvelinohjelmistossa.&lt;br /&gt;
&lt;br /&gt;
Lisätietoa ohjelmointikielistä [https://fi.wikipedia.org/wiki/Ohjelmointikieli Wikipedian puolella].&lt;br /&gt;
&lt;br /&gt;
===Muita netin &amp;#039;merkintäkieliä&amp;#039;===&lt;br /&gt;
*[https://fi.wikipedia.org/wiki/HTML HTML] Web sivujen merkintäkieli (sisältö).&lt;br /&gt;
*[https://fi.wikipedia.org/wiki/Cascading_Style_Sheets CSS] Web sivujen muotoilukieli.&lt;br /&gt;
*[https://fi.wikipedia.org/wiki/Microsoft_Excel#Makrot_ja_VBA VBA] Microsoft Excelin makroja laajentava &amp;#039;ohjelmointikieli&amp;#039;.&lt;br /&gt;
*[https://fi.wikipedia.org/wiki/Wiki-merkint%C3%A4kieli Wiki-merkintäkieli] Yksinkertaistettu versio HTML -kielestä wikien käyttöön.&lt;br /&gt;
*[https://fi.wikipedia.org/wiki/BBCode BBCode] Keskustelupalstojen merkintäkieli.&lt;br /&gt;
&lt;br /&gt;
===Millä ohjelmointikielellä aloittaisin?===&lt;br /&gt;
Lähes kaikilla ohjelmointikielillä perusteet ovat samat ja eroja on lähinnä [https://fi.wikipedia.org/wiki/Syntaksi syntaksissa] ja saatavilla olevissa [https://fi.wikipedia.org/wiki/Kirjasto_(tietotekniikka) kirjastoissa]. Jos haluat perehtyä ohjelmointiin ja sinulla ei ole erityistä kohdetta tiedossa, suositelluimpia kieliä ovat &amp;#039;&amp;#039;&amp;#039;Python&amp;#039;&amp;#039;&amp;#039; ja &amp;#039;&amp;#039;&amp;#039;Java&amp;#039;&amp;#039;&amp;#039;. Jos tiedät mihin tarkoitukseen ohjelmia aiot kirjoittaa, alta luettelosta voit katsoa ohjelmointikielen yleisimmille tarkoituksille.&lt;br /&gt;
*PC työpöytäohjelmia Windowsille tai Linuksille: &amp;#039;&amp;#039;&amp;#039;C++&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
*Työpöytäohjelmia MAC:ille tai mobiilisovelluksia iOS:lle: &amp;#039;&amp;#039;&amp;#039;C#&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
*Android -mobiilisovelluksia: &amp;#039;&amp;#039;&amp;#039;Java&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
*Skriptejä (pieniä ohjelmapalasia pikkutehtäviin): &amp;#039;&amp;#039;&amp;#039;Python&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
*Nettisivuja: &amp;#039;&amp;#039;&amp;#039;HTML(5)&amp;#039;&amp;#039;&amp;#039;, &amp;#039;&amp;#039;&amp;#039;JavaScript&amp;#039;&amp;#039;&amp;#039; ja &amp;#039;&amp;#039;&amp;#039;CSS&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
*Nettipalvelinohjelmistoja: &amp;#039;&amp;#039;&amp;#039;PHP&amp;#039;&amp;#039;&amp;#039; tai &amp;#039;&amp;#039;&amp;#039;Ruby&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
==Lisää ohjelmoinnista==&lt;br /&gt;
&lt;br /&gt;
===Wikikon ohjelmointisivuja===&lt;br /&gt;
* [[Css]]&lt;br /&gt;
* [[Drupal]]&lt;br /&gt;
* [[HTML]]&lt;br /&gt;
* [[IOS_sovellus]]&lt;br /&gt;
* [[MediaWiki]]&lt;br /&gt;
* [[PHP]]&lt;br /&gt;
* [[Python]]&lt;br /&gt;
&lt;br /&gt;
===Kirjoja===&lt;br /&gt;
* http://greenteapress.com/wp/think-python/ Python ohjelmoinnin opas aloitetlijoille (Englanninkielinen)&lt;br /&gt;
* http://inventwithpython.com/index.html Python ohjelmointiin keskittynyt ilmainen kirjasarja (Englanninkielinen)&lt;br /&gt;
&lt;br /&gt;
===Muita nettisivuja===&lt;br /&gt;
* http://www.ohjelmointiputka.net/ Suomalaisten ohjelmoijien kokoontumispaikka.&lt;br /&gt;
* http://mooc.fi/ Korkeakoulu kotonasi&lt;br /&gt;
* [http://www.avoinyliopisto.fi/fi-FI/Sanahaku/?QueryString=ohjelmointi www.avoinyliopisto.fi/] Suomen yliopistojen kaikille avoin opetus, hakusanalla: Ohjelmointi. (Katso kursseja: etäopinnot)&lt;br /&gt;
* [https://www.coursera.org/courses?query=programming www.coursera.org] Ulkomaisten yliopistojen verkkokurssit ohjelmoinnista. Osa kursseista saattaa olla maksullisia.&lt;br /&gt;
* https://www.khanacademy.org/computing/computer-programming KhanAcademyn ohjelmointiosio. Englanninkielisiä verkkotehtäviä ohjelmoinnin alalta.&lt;br /&gt;
* https://codecombat.com/ Selainpeli joka opettaa ohjelmoimaan. Peruskäytössä ilmainen.&lt;br /&gt;
* https://code.google.com/codejam/contests.html Googlen vuosittaisen ohjelmnointikisan tehtäviä. Menneiden vuosien esikarsintatehtävät ovat kohtuullisen helppoja jopa aloittelijalle, mutta finaalitehtävät vaativat jo kokemusta alalta sekä tiettyjen algoritmien tuntemusta&lt;br /&gt;
* https://projecteuler.net/ Matemaattisia / algoritmisia haasteita.&lt;br /&gt;
&lt;br /&gt;
==Ohjelmistoprojektin vaiheista==&lt;br /&gt;
===Projektin aloittaminen===&lt;br /&gt;
* Suunnittelu&lt;br /&gt;
* Hallinnointi&lt;br /&gt;
&lt;br /&gt;
===Määrittely===&lt;br /&gt;
* Vaatimukset&lt;br /&gt;
&lt;br /&gt;
===Suunnittelu===&lt;br /&gt;
* Prototyypit&lt;br /&gt;
* Käyttöliittymän suunnittelu&lt;br /&gt;
&lt;br /&gt;
===Ohjelmointi===&lt;br /&gt;
* Ohjelman kirjoittaminen&lt;br /&gt;
** aliohjelmina osa kerrallaan varmistaen niiden toiminnan&lt;br /&gt;
&lt;br /&gt;
* Tietokannat&lt;br /&gt;
* Poikkeustenkäsittely&lt;br /&gt;
** ohjelman jatkaminen virheen tapahduttua tai hallittu lopetus&lt;br /&gt;
&lt;br /&gt;
===Testaus===&lt;br /&gt;
* Oikeelllisuus ja virheettömyys&lt;br /&gt;
* Debuggaus&lt;br /&gt;
* kirjoitusvirheet, ohjelmointivirheet, määrittelyvirheet&lt;br /&gt;
&lt;br /&gt;
===Dokumentointi===&lt;br /&gt;
* Käyttäjälle&lt;br /&gt;
* Lähdekoodi&lt;br /&gt;
* Tekniset: asennus, mukauttaminen, päivitys&lt;br /&gt;
&lt;br /&gt;
===Ylläpito===&lt;br /&gt;
* Suoritusympäristön muutokset&lt;br /&gt;
* Löytyneiden virheiden korjaukset, päivitykset&lt;br /&gt;
&lt;br /&gt;
===Kehitys===&lt;br /&gt;
* Uudet toiminnot&lt;br /&gt;
* Uudet laitealustat&lt;br /&gt;
* Muuttuneet käyttäjävaatimukset&lt;br /&gt;
&lt;br /&gt;
[[Luokka:Tietokoneet]]&lt;/div&gt;</summary>
		<author><name>91.154.136.164</name></author>
	</entry>
</feed>