Ubuntu Suomen keskustelualueet

Ubuntun käyttö => Ohjelmointi, palvelimet ja muu edistyneempi käyttö => Aiheen aloitti: ilkant - 04.10.21 - klo:15.30

Otsikko: Atom ja node.js
Kirjoitti: ilkant - 04.10.21 - klo:15.30
Asensin node.js Atomiin ohjeen (https://www.youtube.com/watch?v=7XTkFvhu2cI) mukaan. Käyttöliittymä vaan on vähän erilainen. Node.js -ohjelma käynnistyy Atomin valikosta Packages -> Script -> Run script. Atomiin olen aiemmin asentanut Junon, jolla tehdään Julia-ohjelmia.

Atomissa on ollut vasemmassa laidassa ohjelman käynnistinpainike ja myös pysäytyspainike. Ne eivät toimi node.js skripteille. Node.js skriptit pitää käynnistää Atomin valikosta kuten yllä on kirjoitettu. Hetken mietittyäni huomaan, että ne pikapainikkeet ovat ilmeisesti Junon ominaisuuksia. Onko node.js:lle vastaavanlaisia liitännäisohjelmia, josisa olisi käynnistys yhdellä painikkeella? Ja jos on, niin miten valitaan käyttääkö Junoa vai scriptinkäynnistystä painikkeesta?

Jälleen kuitenkin mukava huomata, että on olemassa täysin ilmaisia koodinkehitysympäristöjä sekä Julialle, että Junolle. Myös Pythonille on varmasti liitännäinen, mutta minulla on käytössä siihen kieleen pyCharm.
Otsikko: Vs: Atom ja node.js
Kirjoitti: ilkant - 04.10.21 - klo:17.34
Hämmästyksekseni Raspberry pi 2B -laitteeseen asentui node.js. Siihen Raspbianiin ei ole tullut vuosiin mitään järjestelmäpäivitystä. Mutta Hello World -ohjelma ajautui syntax erroriin.

Koodia: (Ohjelmakoodi) [Valitse]
const http = require('http');

const hostname = '127.0.0.1';
const port = 3000;

const server = http.createServer((req, res) => {
  res.statusCode = 200;
  res.setHeader('Content-Type', 'text/plain');
  res.end('Hello World');
});

Koodia: (Suoritus) [Valitse]
$ sudo apt-get install nodejs
...
$ js koe.js

koe.js:6
const server = http.createServer((req, res) => {
                                             ^

module.js:434
  var compiledWrapper = runInThisContext(wrapper, filename, true);
                        ^
SyntaxError: Unexpected token >
    at Module._compile (module.js:434:25)
    at Object..js (module.js:464:10)
    at Module.load (module.js:353:32)
    at Function._load (module.js:311:12)
    at Array.0 (module.js:484:10)
    at EventEmitter._tickCallback (node.js:190:39)
{/code]
Otsikko: Vs: Atom ja node.js
Kirjoitti: nm - 04.10.21 - klo:17.47
koe.js:6
const server = http.createServer((req, res) => {

Arrow-funktiot toimivat Node.js 6.0:sta lähtien. Jos Raspbianisi versio on 9 (stretch) tai vanhempi, siinä on liian vanha nodejs-paketti.

Stretchiinkin on kuitenkin edelleen saatavissa jopa uusimmat Node.js:n versiot Nodesourcen apt-lähteestä:
https://github.com/nodesource/distributions/blob/master/README.md
Otsikko: Vs: Atom ja node.js
Kirjoitti: juyli - 05.10.21 - klo:01.20
Asensin node.js Atomiin ...
Asensitko Atom-ohjelman Ubuntu-jakeluun vai Rasbianiin?
Atom:in asentaminen Ubuntu-jakeluun esim: https://linuxize.com/post/how-to-install-atom-text-editor-on-ubuntu-20-04/
Rasbian ei ole Ubuntu-jakelu, joten aiheen käsittely alueella 'Ubuntun käyttö >> Ohjelmointi, palvelimet ja muu edistyneempi käyttö' ei ole aivan omiaan.
https://www.dummies.com/computers/raspberry-pi/raspbian-your-raspberry-pi-linux-operating-system/
Otsikko: Vs: Atom ja node.js
Kirjoitti: ilkant - 05.10.21 - klo:10.03
Asensitko Atom-ohjelman Ubuntu-jakeluun vai Rasbianiin?

Asensin Atomin Kubuntu 21.04:ään. Ja sitten kokeilin yleensäkin node.js:n asennusta Raspberryyn.
Otsikko: Vs: Atom ja node.js
Kirjoitti: ilkant - 05.10.21 - klo:10.05
Arrow-funktiot toimivat Node.js 6.0:sta lähtien. Jos Raspbianisi versio on 9 (stretch) tai vanhempi, siinä on liian vanha nodejs-paketti.

Kiitos tiedosta. Jos nyt käsitin oikein, niin ohjelmoimalla eri tavalla tuon hello world -ohjelman, se saattaisi jopa toimia Raspberry Pi 2B:ssä. Ei sen tarvitsisi paljoa tehdäkään. Ajattelin jossain vaiheessa rakentaa itselle palvelimen, johon netisn kautta voisi tuupata yhteen harrastukseen liittyviä tiedostoja kooltaan muutama kilotavu.
Otsikko: Vs: Atom ja node.js
Kirjoitti: nm - 05.10.21 - klo:11.44
Arrow-funktiot toimivat Node.js 6.0:sta lähtien. Jos Raspbianisi versio on 9 (stretch) tai vanhempi, siinä on liian vanha nodejs-paketti.

Kiitos tiedosta. Jos nyt käsitin oikein, niin ohjelmoimalla eri tavalla tuon hello world -ohjelman, se saattaisi jopa toimia Raspberry Pi 2B:ssä.

Joo, perinteisellä funktiosyntaksilla toimisi, mutta kannattaa joka tapauksessa päivittää käyttöjärjestelmä ja Node.js sellaisiin versioihin, joihin tulee tietoturvapäivityksiä. Noden osalta siis versio 12 tai uudempi.