Seuraa 
Viestejä2846
Liittynyt12.9.2012

Onko kellään?
Sattuneesta syystä tarviis. Aikoinaan pahaa-aavistamattomille nuorukaisille katsottiin aisialliseksi opettaa ensimmäiseksi ohjelmointikieleksi BASIC ja kaikkihan tietää mitä siitä seurasi, aiheutti pahan aivovaurion.
RUST on todettu tehokkaaksi, vähäinen tutustuminen pelästytti pahoin. Python todettu äääääärettömän hitaaksi, no go.
Joten olisko GO,Groovy tms. mitä?
Tämä Kotlin
"
fun showUsers(users: List?) {
users ?: return
val adapters = users.map { UserAdapter(it, ::onUserClicked) }
list.adapter = UserListAdapter(adapters)
}
In above code snippet, we can see how showUsers is defined. In the first statement of its body, it is checking if the users parameter is not null. Notice that while function parameters in Kotlin are read-only, such assertion is smart casting users into non-nullable for the rest of the function. Therefore in the second statement, we can just use it without any unpacking. Note that when we are mapping users into adapters on the expression UserAdapter(it, ::onUserClicked) we also provide the argument with reference to function onUserClicked. In the last statement we are specifying an adapter of the list as a newly created instance of UserListAdapter. It includes adapters created for all users.
"
ainakin alkuun täyttä hepreaa, kannattakohan tuota yrittää opetella?

Sivut

Kommentit (34)

NytRiitti
Seuraa 
Viestejä2846
Liittynyt12.9.2012

Tätäkään en tajunnut BASIC:in tiedoilla, mut ah , toikin on jotain OO juttua, getter kuuluukin kotlinin syntaksissa edelliseen var lauseeseen

...

var name: String = "Marcin"
get() = field.capitalize()

name = "marcin"
print(name) // Prints: Marcin

...

Kotlin kääntää JVM:lle, eli ei mikään tehokas, mutta native-kääntäjä kehitteillä, lienee valmis sitten kun minäkin olen hieman oppinut ko. kieltä (suomalaisittain Retusaari, tiesittekin varmaan)

mdmx
Seuraa 
Viestejä5216
Liittynyt23.11.2009

Kannattaaks tollasia pieniä kieliä opetella? Tai riippuu tietysti käyttötarkotuksesta.

Java tai C# on helppoja ja yleisesti käytettyjä.

Gemini
Seuraa 
Viestejä1462
Liittynyt20.12.2013

Riippuu aika paljon siitä, mille alustalle koodaat. Sulautetuissa (tarkoitan kehityskittejä), kuten Arduino ja STM32 mennään aika paljolti C/C++:lla, koska ne soveltuvat hyvin laiteläheiseen ohjelmointiin. Toisaalta Arduinon kirjastovalikoima alkaa olla sen verran laaja, että tuo laiteläheisyys hieman varauksella (kokemusta on noiden "puukottamisesta" protohommissa, ei kovinkaan kivaa touhua). Arduinoon saa ilmaisen ohjelmointiympäristön, jolla voi nykyään ohjelmoida myös noita 32 bittisiä STM:n kehitysalustoja, ehkä myös muidenkin alustoja. STM:llä on ilmainen selainpohjainen MBED-systeemi, mitä olen joskus kokeillut. 32 bittiset kontrollerit ovat "valovuosia" edellä noista kasibittisistä suorituskykynsä suhteen, joten jos sulautetut kiinnostaa, suosittelisin perehtymään noiden ARM-pohjaisten sielunelämään. Jos taas tietokonepohjaisilla alustoilla, niin ehkä Java, C#/C++ tulisi kyseeseen. 

Gemini
Seuraa 
Viestejä1462
Liittynyt20.12.2013

NytRiitti kirjoitti:
https://appdevelopermagazine.com/why-kotlin-language-use-is-skyrocketing/

Nokun haluaa olla edistyksellinen, moderni, aikaansa seuraava ja mitä vielä.

Jos BASIC:in jälkeen jotain vielä oppis.

Muistui mieleeni tapaus nuoruusajoiltani, kun omistin C-64:n kasettiaseman kera. Sovimme parin kaverin kanssa, että tulevat yöllä kylään (siihen aikaan oli ns. nukkumaanmenoajat, mutta tykkäsimme roijata syysiltoina milloin missäkin), niin hokasin koodata basicilla tv:n näytölle juoksemaan satunnaisia värejä. Verhon läpi ulkoapäin se näytti siltä, kuin olisin pelannut jotain peliä huoneessani. Menin ulos odottamaan kavereitani ja säikäytin heidät pahanpäiväisesti, kun luulivat minun pelaavaan Boulderdashia/Blue Maxia tjsp. Se oli huoletonta ja hauskaa aikaa!

NytRiitti
Seuraa 
Viestejä2846
Liittynyt12.9.2012

Gemini kirjoitti:
Riippuu aika paljon siitä, mille alustalle koodaat. Sulautetuissa (tarkoitan kehityskittejä), kuten Arduino ja STM32 mennään aika paljolti C/C++:lla, koska ne soveltuvat hyvin laiteläheiseen ohjelmointiin. Toisaalta Arduinon kirjastovalikoima alkaa olla sen verran laaja, että tuo laiteläheisyys hieman varauksella (kokemusta on noiden "puukottamisesta" protohommissa, ei kovinkaan kivaa touhua). Arduinoon saa ilmaisen ohjelmointiympäristön, jolla voi nykyään ohjelmoida myös noita 32 bittisiä STM:n kehitysalustoja, ehkä myös muidenkin alustoja. STM:llä on ilmainen selainpohjainen MBED-systeemi, mitä olen joskus kokeillut. 32 bittiset kontrollerit ovat "valovuosia" edellä noista kasibittisistä suorituskykynsä suhteen, joten jos sulautetut kiinnostaa, suosittelisin perehtymään noiden ARM-pohjaisten sielunelämään. Jos taas tietokonepohjaisilla alustoilla, niin ehkä Java, C#/C++ tulisi kyseeseen. 

Ajatus (kartoitus, idea , haave tms.) on käsitellä melko tavallisella kotimikrolla suuuurta aineistoa. Pythonista on karmea kokemus, kun ei saisi kestää muutamaa sekuntia kauemmin,kestää minuutteja. C ja Java on niiiin vanhoja, ei moderni, aikaansaseuraava jne.  halua lukeutua kalkkiksiin.

Hänen pyhyytensä
Seuraa 
Viestejä27855
Liittynyt13.5.2005

JavaScript lukuisine kirjastoineen lienee kaikista kielistä aikaansaseuraavin kieli, mutta Java, C#, C tai C++ taitavat pestä kaikki "aikaansaseuraavat" kielet kun pitäisi käsitellä suurta aineistoa kotikoneella.

Riittoisampi keskustelukumppani.

Neutroni
Seuraa 
Viestejä29581
Liittynyt16.3.2005

Ehkä voisit täsmentää mitä tarkoitet helpolla ja tehokkaalla. Haluatko, että kieli on helppo ja nopea oppia perustasolle, kielellä voi tuottaa pienellä työllä lajoja ohjelmia tai että tietokone suorittaa tietyn algoritmin nopeasti, kun se on käännetty kielellä? Käytännössä ne ovat keskenään ristiriitaisia tavoitteita.

Minä tekisin tuollaisen pienehkön yhden miehen harrastusprojektin, jossa ei vaadita koodilta ymmärrettävyyttä ja ylläpidettävyyttä tai ohjelmalta mielekästä käyttöliittymää (arvasin niin) epämuodikkaalla C:llä. Se on yksinkertaisena helppo opetella ja sillä voi koodata erittäin tehokkaita algoritmeja.

NytRiitti
Seuraa 
Viestejä2846
Liittynyt12.9.2012

Ymmärrän tavoitteiteni ristiriitaisuuden. Ohjelman nopeus on ykköstavoite. Siksi C oli tietysti ensin mielessä (assemblerin jälkeen). En tiedä, mikä on ollut ohjelmointikieli  tai tietokanta sovelluksessa, jolla olen aineiston vuosien mittaan kerännyt. Ko. ohjelma on jokatapauksessa salamannopea, mutta kehitys ja tuki loppunut varmaan 15 vuotta sitten, outoa mutta toimii WIN10:ssä. Vastaava sovellus Pythonilla on täysin käyttökelvoton , esim. aineiston siirto tunteja. Aineiston saa apuohjelmilla esim. JSON-muotoon.

RUST kävi mielessä C:n korvaajana, mutta voi kauhistus. Kotlinhan on ikäänkuin edistyneempi Java, kaikki Javan kirjastot ym. suoraan käytettävissä. Eli ei siis helppoa kieltä.

NytRiitti
Seuraa 
Viestejä2846
Liittynyt12.9.2012

Tietysti tähän yksittäiseen "projektiin" C olisi se oikea valinta. Simppeli JSON->SQL.  Hakutoiminnot tuossa antiikkisessa sovelluksessa on ne, mitkä hiertää. Yleiset syyt toisaalta puhuvat jonkun modernin kielen puolesta.

mdmx
Seuraa 
Viestejä5216
Liittynyt23.11.2009

C# on moderni kieli jota kehitetään jatkuvasti, Windows maailmaan melkeimpä ykkösvalinta. Uusissa versioissa kivoja ominaisuuksia asynkroniseen ja rinnakkaistettuun ajoon ilman lisätyötä. LINQ tekee datankäsittelystä selkeää, Datan serialisointi ja deserialisointi JSON/XML lähes nolla effortilla. Tietokanta yhteys Entity Frameworkilla ja LINQ:lla.  Käyttöliittymä XAML:lla. Erilaiset cloud/REST apit webapi2:lla.

Noi kaikki tylsät hommat on automatisoitu .NET:T:ssä pitkälle ja vuosien saatossa hiottu hyvin toimiviksi.

Suorituskykyvaatimusten pitää olla kyllä hyvin poikkeuksellisia että jaksaa winkkarille C++:lla nykyään mitään tehdä. Linux/Android/iPhone puolelle teen käytännössä kaikki QML QtQuick C++:lla.

MathLab sillon kun pitää nopeasti testailla algoritmeja mitkä vaatii paljon visualisointia, tosin nekin menee melkein yhtä helposti C#:lla ja helpompi työstää valmista toteutusta sen pohjalta.

mdmx
Seuraa 
Viestejä5216
Liittynyt23.11.2009

JSON->SQL on kuin omiaan C#:lle.

Ensin teet luokat jotka mallintaa datan, ja serialisoit jsoni sisään.

https://docs.microsoft.com/en-us/dotnet/framework/wcf/samples/json-seria...

Sitten generoit tietokantatauluista ADO.NET Entity Data Modelin.

https://www.c-sharpcorner.com/article/introduce-entity-framework-with-ad...

Sitten väliin muutama rivi LINQ koodia joka tekee tarvittavan transformaation datalle.

https://docs.microsoft.com/en-us/dotnet/csharp/programming-guide/concept...

Manuaalisesti tehdyt tiedostojen parsinnat ja sql queryt ei ole tätä päivää, en suosittele. Kun opettelee kunnon työkalujen käytön homma toimii kivuttomasti ja saa ite keskittyä niihin hauskempiin osuuksiin.

Visual Studio Community 2017

https://visualstudio.microsoft.com/vs/express/

Gemini
Seuraa 
Viestejä1462
Liittynyt20.12.2013

NytRiitti kirjoitti:
Ymmärrän tavoitteiteni ristiriitaisuuden. Ohjelman nopeus on ykköstavoite. Siksi C oli tietysti ensin mielessä (assemblerin jälkeen). En tiedä, mikä on ollut ohjelmointikieli  tai tietokanta sovelluksessa, jolla olen aineiston vuosien mittaan kerännyt. Ko. ohjelma on jokatapauksessa salamannopea, mutta kehitys ja tuki loppunut varmaan 15 vuotta sitten, outoa mutta toimii WIN10:ssä. Vastaava sovellus Pythonilla on täysin käyttökelvoton , esim. aineiston siirto tunteja. Aineiston saa apuohjelmilla esim. JSON-muotoon.

RUST kävi mielessä C:n korvaajana, mutta voi kauhistus. Kotlinhan on ikäänkuin edistyneempi Java, kaikki Javan kirjastot ym. suoraan käytettävissä. Eli ei siis helppoa kieltä.

Voitko tarkentaa enemmän? Jos sulla on vuosien varrella kerättyä aineistoa, josta pitää laskea esm. tilastollisia juttuja, todennäköisesti jokin siihen tarkoitukseen jo valmiiksi koodattu sovellus (Matlab, Octave (ilmainen)) tai vastaava hoitaisi homman helpommin kuin se, että koodaisit ensin itse sovelluksen, joka analysoi dataa.

Gemini
Seuraa 
Viestejä1462
Liittynyt20.12.2013

mdmx kirjoitti:
JSON->SQL on kuin omiaan C#:lle.

Ensin teet luokat jotka mallintaa datan, ja serialisoit jsoni sisään.

https://docs.microsoft.com/en-us/dotnet/framework/wcf/samples/json-seria...

Sitten generoit tietokantatauluista ADO.NET Entity Data Modelin.

https://www.c-sharpcorner.com/article/introduce-entity-framework-with-ad...

Sitten väliin muutama rivi LINQ koodia joka tekee tarvittavan transformaation datalle.

https://docs.microsoft.com/en-us/dotnet/csharp/programming-guide/concept...

Manuaalisesti tehdyt tiedostojen parsinnat ja sql queryt ei ole tätä päivää, en suosittele. Kun opettelee kunnon työkalujen käytön homma toimii kivuttomasti ja saa ite keskittyä niihin hauskempiin osuuksiin.

Visual Studio Community 2017

https://visualstudio.microsoft.com/vs/express/[/quote]

Teetkö nykyään työksesi ohjelmointia?

Sivut

Suosituimmat

Uusimmat

Uusimmat

Suosituimmat