iT邦幫忙

2

零經驗JavaScript新手,想學寫資料庫,求給一個學習方向。

  • 分享至 

  • xImage

各位網友好,自己因為興趣的關係,工作之餘想要學習一個程式語言。
在工作時碰到大多數程式碼都是JavaScript(人資系統、雲端ERP......),
所以挑了JavaScript做為敲門磚。

我的初期目標是

  1. 做出一個page(這邊以客戶名單為例子),裡面包含一個有多個input欄位的form可以填寫客戶資料(如居住城市、年齡、消費額......),然後submit後,把這份資料儲存起來。
  2. 在另一個page顯示出已經儲存的資料,用列表的方式顯示供查詢。
    之後希望可以加上篩選、下拉選單等功能,不過這部分不急,想先做出一個最基本的成果。

一開始我是參考mdn web doc的Web入門學習基礎知識,接著完成裡面的HTML、CSS、JavaScript章節,一路上都還算順利。

但是我後來發現JavaScript並沒有儲存資料的功能,一般教學中的local storage跟session不是我要的功能,我是想要有像是一個資料庫可以存取的功用。我發現,要達到這樣子的效果只有前端的JavaScript是不夠的,我需要一個後端語言、一個web框架跟一個和後端語言配合的資料庫系統

所以我歸納出,我需要再涉獵:

  • Node.js
    //JavaScript作為後端語言的Runtime,我不太懂Runtime的定義,但是因為已經學了一部分JavaScript,所以我想選擇Node.js可以有比較好的學習曲線)
  • Express
    //網路上推薦新手的Node.js Web框架
  • 還有MySQL/MangoDB (RDBMS/NoSQL)
    //學習資源較多的資料庫系統
    如果有錯,或是有更簡單的方法,麻煩指正我!

接著問題就是我發現網路可以找到關於上面三者的學習資源較少,或是說不適合沒有一定程式語言經驗的人來學習,如同樣在mdn web doc上的Express網站框架,我就看得一頭霧水,太多不懂的觀念,不知道要先惡補哪裡。

所以想請問一下,如果我想要達到我的初期目標,有無推薦的學習資源,付費免費不限、中文英文不限,但必須要是面相程式語言新手的內容。我不擔心要花很多時間,但是希望可以少走冤望路

看更多先前的討論...收起先前的討論...
haward79 iT邦研究生 2 級 ‧ 2023-04-01 13:38:40 檢舉
你可以說一下你對 JS 的熟悉程度到哪裡嗎?
另外,你大概了解網頁的運作原理嗎?(前後端的概念)
ccutmis iT邦高手 2 級 ‧ 2023-04-01 14:52:37 檢舉
在 google 搜 "nodejs express mysql 教學" 或 "nodejs express mysql 範例"
就可以找到一堆教學資料或影片...

它們通常會教你建構nodejs+express+mysql的開發環境,然後搭配一個簡單的範例說明各步驟做的事情,裡面提到關於資料庫的部份不會太多。

但至少這樣你就有資料庫測試開發的環境了,接下來你可以找一些專注在SQL的書或網路資源來學習,例如 INSERT、SELECT、UPDATE、DELETE裡面更細節的一些語法及它們的用途。

如果你本身是喜歡閱讀紙本書的話,推薦您找 O'REILLY 出版的 相關 IT 書籍,例如 SQL Cookbook 之類的(我手邊就有 Node學習手冊 跟 Node express 的紙本書),從裡面可以學到很札實的理論與實務上能運用的技巧,缺點就是費錢佔空間。也可以找相關的電子書來看。

冤望路這種事難免的,例如看到巴匪買了台雞店想說穩了出手馬上套,或是在補習班學成Flash打算在業界大展身手結果沒幾年Flash變成全民公敵...在2000年初Javascript只是被人當成小玩具呢,未來如何誰知道呢? 不必怕走冤望路(你早晚還是要走XD),怕的是沒有勇氣堅持走下去...
我對JS的認知很粗淺,就是從我上面貼的MDN網站學的,我現在知道不同種類的Variable包括基礎的Array和String轉換應用和用三維運算符測Booleans;指定function要做什麼事,然後加上eventlistener去設定什麼時候要觸發function,。

對於網站我的理解是前端負責跟用戶互動,用戶提交或索求表單會透過HTTP傳給Server,Server會把資料存到Database或從Database提取資料後再用HTTP回覆給前端。Server到Database這邊的運作是後端,透過瀏覽器顯示的網頁介面是前端。但是對於這些資料包括HTTP的傳輸技術細節我沒有去了解過,另外後端的架設包刮Server和Database跟我說的一樣,我還沒有學過。

我知道我對JS的瞭解不夠深,實作經驗幾乎為零,但是對我想要完成的目標,似乎一定需要後端的介入,所以才會來詢問大家是否應該先投入學習後端,以及,如果是,應該從那些學習資源下手。
謝謝你提醒我還有看Youtube學習這條路,不知道為什麼這個選項完全沒出現在我腦海過...... 可能前一陣子一直在看文章,腦袋有點轉不過來。我會找一些影片來試試看成效如何。
我也喜歡看書,根據我的需求有下單買了O'REILLY的"JavsScript大全"犀牛書和"網頁應用程式設計 使用Node和Express"。不過後者資料庫的建立是用MangoDB,看大家都是推薦mySQL,有點小擔心。不過像您說的,不要怕走冤望路,我決定雙頭並進,真的選錯了之後再換,一步一步學吧!
ccutmis iT邦高手 2 級 ‧ 2023-04-01 22:09:31 檢舉
這個雞湯影片很不錯 推薦觀看 可以開字幕英翻中
(雖然標題寫 給學生跟視覺設計人員 但我覺得裡面的概念是 通用的)
https://www.youtube.com/watch?v=BuW4iIJBjsk
froce iT邦大師 1 級 ‧ 2023-04-06 11:17:54 檢舉
不是,你光說你看不懂,何不把你不懂的地方直接拿出來問?

MDN的教學,在一開始那只是先跟你說你接下來會碰到的東西,是個讓你對整體你要學的東西有個大概的認識,那些code你可以先不深追,但是你得知道你接下來會碰到像是middle ware、view、ORM、route 等框架會用到的各項技術。

簡單的說,像下面這篇,你該先看個整體,然後自己慢慢深入各節裡面提到的連結。
https://developer.mozilla.org/zh-TW/docs/Learn/Server-side/Express_Nodejs/Introduction

初學者或許喜歡一步一步帶,但有點經驗的會比較喜歡這種方式,因為基本上看個一眼就知道該去哪找資料了。
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中
1
toly
iT邦新手 5 級 ‧ 2023-04-01 14:15:48

Express的学习建议看看官方文档就够了。https://expressjs.com/,里面的例子跟着敲敲。

NodeJS现阶段不建议很深入去看,YouTube上面搜搜概念入门的视频即可。

MySQL新手可以看看,MySQL菜鸟教程,你就知道如何建立数据库,对表和数据进行增删改查。

謝謝!我看了一下express官網的Getting Started真的滿有幫助的。

2
海綿寶寶
iT邦大神 1 級 ‧ 2023-04-01 16:24:59

你那篇寫得很完整
只要你繼續往下看Server-side website programming就會看到你想要的了
/images/emoticon/emoticon12.gif

我會重新再看一次你推薦的章節,請問會建議跳過目前看不懂得程式碼嗎?

會這麼問是因為我有嘗試過讀這一部分,但從Client-Server Overview開始,我覺得看得有點暈頭轉向,因為文章中有解釋一部分的概念,但是給的程式碼範例有很大一部份沒有解釋,強迫症的我有點看不下去,因為無法全盤的了解範例程式碼在做什麼......

其實MDN這系列的教學在前面就有這樣的問題,比如"JavaScript first steps"這一章節用了一個猜數字遊戲作為範例,但是一直到後面的章節"Introducing JavaScript objects"才說明了eventlistener跟ternary operator等等重要構成的運作方式。導致我要看懂他給的例子之前查了很多資料和跟Chat GPT討論很久才懂範例程式碼在幹嘛。

再不然我就推w3school
簡單明瞭
/images/emoticon/emoticon12.gif/images/emoticon/emoticon12.gif/images/emoticon/emoticon12.gif

03022049874
iT邦見習生 ‧ 2023-04-01 18:25:40
【**此則訊息已被站方移除**】
1
suncuxiapple
iT邦新手 1 級 ‧ 2023-04-02 19:04:46

對我來說架設環境比較困難

david007
iT邦見習生 ‧ 2023-04-03 16:46:19
【**此則訊息已被站方移除**】
0
apophis99942
iT邦新手 5 級 ‧ 2023-04-28 10:57:32

要最快速找到入門課程的話,udemy中有很多特價的課程,有的300元以內就買得到,可以上去找找。

首先,我是覺得一開始的入門無論課程寫得多簡單,都會有很多不懂的地方,然而教學中絕對不會每個地方都解釋給你聽,最好的辦法就是去讀懂你所使用的語言、框架提供的 Docs,裡面會有更全面的學習方向,同時也是最正確的。

另外,你必須先搞懂所謂前、後端、資料庫之間的關係,IT邦的鐵人賽也有很多很棒的文章,跟著做就會有巨大的進步,找對資料絕對是學程式的第一步,加油!

p.s. 我不提供連結是因為我覺得自己去找資料是一件很有趣的事,找的過程中你也會發現原本你想像不到的答案。還有...我想你想說的應該是 mongoDB 而不是 mangoDB (吧?

我要發表回答

立即登入回答