看板 Soft_Job 關於我們 聯絡資訊
小弟想對於這篇文章做個討論 首先,網頁是個坑,個人覺得是個門檻低 但是要專精好難 永遠別人做的網站比你有效率 UI刻得比你漂亮 用別人的framework又覺得怪怪的,好看的要收錢 想自己刻畫面,才發現原來把一個圖片放到"想要的"位置是有多麼難。 (上面是推火坑點) 其實學得愈多 不懂得愈多 網頁技術發展快到飛天 好處是可以學很多好玩的 漂亮的 可以認識很多高手。 好啦 廢話說完。以下針對文章做討論 ※ 引述《poopoo888888 (阿川)》之銘言: : yo~小弟出社會工作兩三年了,有一些心得分享給想入門學寫網站的朋友: : 用 Ruby on Rails 非常辛苦,用 PHP 非常舒服 首先拿語言跟框架比較,我覺得是不可以擺在一起比較的。 有點類似張飛打岳飛的感覺。 拿Laravel,CodeIgniter來跟Rails比 才比較正常 就好像聽到有人拿C/C++跟Visual C++比的感覺,就..怪怪的。 : 網頁好讀版 : http://blog.turn.tw/?p=2881 : ------------------------------------------------------ : Rails是新手入門學寫網站最辛苦的選擇之一。 : 常常有文章或是課程建議新手用Rails入門寫網站,我認為這種建議十分危險。 : Rails並不適合初學者使用。推薦沒有資訊背景的人去學Rails,很可能害他事倍功半。 : 新手用Rails入門的問題在哪? : Rails最大的問題就在於:它從一開始就不是設計給新手用的。 : 它是設計給工程師快速開發用的。 : 軟體工程沒有萬靈丹。適合老手的,對新手來說一定太難; : 適合新手的,對老手來說一定太囉唆。 : Rails為了替工程師節省反覆設定(configuration)的時間, : 而預設了許多立場(convention)。 : 新手連web application的基本知識、環境設定都不知道, : 直接去學前人的framework和convention,絕對不是好事,也非常辛苦。 : 我們從Rails的官方入門導覽來舉例吧: : http://guides.rubyonrails.org/getting_started.html : 對新手來說,這份導覽真是充滿了災難。 : 它就跟大部份的rails教材一樣,會帶新手去學很沒必要的4件事情: : 1. 新手沒必要學框架的檔案結構 : 2. 新手沒必要學框架的command line指令 : 3. 新手沒必要學helper : 4. 新手沒必要學migration : 1. 新手沒必要學框架的檔案結構 ############## 中間恕刪 ################## : 初學者最舒服的學習路徑:PHP + 懶人包 : 初學者對於開發網站的想像,不外乎就是「寫幾行程式碼,做出幾個小頁面」。 : 他一開始對於環境安裝與調整沒有興趣,也負荷不來。 : 這個時候,使用PHP搭配懶人包開發會是最舒服的路徑。 : 學寫網站至少要碰幾個東西: : HTML : CSS : client-side programming (JavaScript) : server-side programming (ex: Ruby on Rails 或是 PHP) : 資料庫 : 架server : 我對新手學習的建議是這樣的: : 1. HTML和CSS幾乎沒有入門門檻,線上隨便找教材都有。 : 2. JavaScript主要是用來做瀏覽器上的一些動態效果,非必要。一開始先不學。 : 3. 資料庫跟架server一開始超出新手想像,可以先安裝懶人包帶過。 : 4. server-side programming才是新手原本理解的「學寫網站」。 : 基於以上四點建議,新手一開始把心力放在1、4即可,然後從以下懶人包擇一安裝: : AppServ : Wamp : Xampp : 這些懶人包會直接幫你裝好server、資料庫與PHP。 : 資料庫相關的操作可以先透過phpMyAdmin之類的軟體用滑鼠操作。 : 接著在線上找PHP教學之類的東西,以「一個檔案就可以做出一個網頁」的方式開始學習。 : 在懶人包的協助下,按照興趣慢慢摸索HTML, CSS和PHP的知識。 : 之後再根據目標,從以下三個方向更進一步學習: : 急著讓網站上線者,可以把程式碼交給工程師朋友,請他幫忙買網址、架起來。 : 對server side工程有興趣者,可以補強資料庫、伺服器等等知識。試著不依靠懶人包就獨 : 立搞定環境、挑一個框架學習之類的。 : 對client side工程有興趣者,可以補強JavaScript的知識,學習前端相關知識。 : 入門最重要的是循序漸進,先想辦法做出一個能動的網站, : 之後再根據需求,把缺少的技能一個一個補起來。 : 在「實作出成品」與「學習新知識」之間來回進行,反覆累積成就感與能力。 : 一口氣全部一起學,只會非常茫然、倍感挫折而已。況且根本沒有必要。 : 用Rails就更慘了,在一開始就得學一些工程師用的進階手法。 : 總結起來,我給網站初學者的建議就是:用Ruby on Rails 非常辛苦,用PHP非常舒服。 這邊我許多點認同,但是 也有許多點覺得拿來比較的點 也是比較錯了。 直接進入討論主題 首先,你對於PHP的優點完全沒有提到!? 卻一直說Rails學習的辛苦。 PHP首先是學習容易,很多網路資源 也可以直接內嵌於HTML寫程式。 對於新手來說,不知道他們的差異性。 前人走過許多辛苦路,維護上困難,要去寫出有效率、簡潔的程式 就會去開發出框架,新語言,工具出來。 Node.js , Rails , Django 等。 一個學習曲線應該是 我想寫一個網頁 ↓ 靜態網頁: HTML (顯示圖片,文字,) ↓ 有特效,動態網頁: XML, JavaScript(點擊產生效果,自動填入等等) ↓ 要漂亮的網頁 : CSS ,甚至去畫UI工具...等。 ↓ 要做一個含有資料庫的網頁(留言板,論壇,會員管理系統) : MySQL, MongoDB ↓ 當然有以上資料庫的網頁要有後端程式溝通 :(語言) PHP, JavaScript, Ruby, Python ↓ 才會有你所說的後端程式以及框架: Node.js, Rails, Django ↓ 去租網路空間好貴,想自己架設Server : Apache 等。 才會有你提到的Appserv, XAMPP (懶人包) 當然,對於一個初學者來說懶人包是最棒的。 但是外面的世界總是特別大。 有時候選擇對自己最喜歡 最快樂的語言,工具去寫才是最棒的 既然你提到入門。 寫網頁 HTML,JavaScript可以說是必備了。 這裡可以推薦一個小小好玩的東西: Sinatra 去看官方網頁可以看到,用輕量的前端+後端 還可以搭配資料庫以及Web Server 當然還有許多啦。 -------------------------------- http://www.sinatrarb.com/ 官網範例程式: require 'sinatra' get '/hi' do "Hello World!" end 在後端輸入以下: $ gem install sinatra $ ruby hi.rb == Sinatra has taken the stage ... >> Listening on 0.0.0.0:4567 打開網址輸入: 0.0.0.0:4567 -------------------------------- 上面包含啟動server,不到10行的程式 已經完成了以下工作: 靜態網頁,後端語言,網頁路由,Web Server,網路溝通等..。 (當然不包含資料庫..還沒寫麻..) 貼個圖片 寫個超連結也都相當方便! 缺點呢? 中文化教學太少了吧 不然我看不出來學習這個有比學PHP + MySQL + HTML + JavaScript 差在哪? 其實你提到的已經是全端工程師在做的事情了。 真正在工作細分得更多 每個人專精的領域也不同。 學習PHP + MySQL + HTML 是個好的路線 但是換換口味也不錯。 寫完一個靜態網頁,學了後端語言,就只能走架站了嗎? 可以寫App。 搭配 phonegap,cordova。 可以拿來寫手機、平板上的App. 其實是可以做得到的,只要你會寫網頁 你要寫任何程式都可以 遊戲、會員登入系統、打電話、作業系統...等數不完的應用。 < 科技始終來自於人性 > 以下是一個範例 http://justinsanity.github.io/boo-it/ 用網頁技術去寫一個 通訊軟體App.(類似Line) 的應用 時間只要30天,一個月你可以學會 網頁、前端、後端、Web Server、資料庫、App甚至資安觀念等。 當然,寫出來的可以在Android, IPhone上運作沒有問題。 https://youtu.be/mgj62ozU00Y (IPhone, Android)
甚至可以再用網頁技術寫出來的OS 手機 Firefox OS(雖然已經不在開發 淚.. http://youtu.be/Cp1D8nkxD2o (Firefox OS手機)
雖然都是用模擬器,但是在實體機器上跑是沒有問題的。 玩網頁技術是快樂的 學不完的東西會辛苦 但是發現有更多好玩的東西 就不會覺得辛苦 而是有挑戰性 甚至去玩一下Firefox OS,Mozilla就寄台平板送你玩呢! 小弟只是做個討論,有那裡不對 或者要建議的地方可以提出來.. -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 123.241.84.53 ※ 文章網址: https://www.ptt.cc/bbs/Soft_Job/M.1455902194.A.283.html ※ 編輯: larrywhy (123.241.84.53), 02/20/2016 01:20:50
EQQD: iOS Android的對話 沒有顯示IOS的輸入耶XD 02/20 01:23
可以啦 你去把整個專案抓下來就可以:D
sp063439: 跪 Orz 02/20 01:23
tsao1211: 光是用command line就不很初學了 02/20 01:26
同意, 這點我忘記了考慮。 當然還有系統上的學習考量 ※ 編輯: larrywhy (123.241.84.53), 02/20/2016 01:30:15
Argos: 啊...就缺了下載一鍵安裝阿 而且要是windows限定喔XDD 02/20 01:30
windows限定實在是太困難了XD 一鍵安裝倒是不難..
sp063439: 的確新手可能光 ruby 環境就先死惹,更別說 m$ user 02/20 01:30
Argos: 看到很多人教ROR都有一個前提 你買台mac再來吧?XD 02/20 01:31
哈哈,用Linux學的人也不少啦。至少是一種省錢solution ※ 編輯: larrywhy (123.241.84.53), 02/20/2016 01:33:43
sp063439: pc 灌 linux 或肉卷( vagrant )等 vm 才是上解 02/20 01:33
用vagrant根本作弊! 懶人包阿! ※ 編輯: larrywhy (123.241.84.53), 02/20/2016 01:34:41
CCben: 推解說清楚 02/20 08:23
schemer: 推這篇 02/20 10:48
fbukevin: 推強者! 02/21 01:52