<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	
	xmlns:georss="http://www.georss.org/georss"
	xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#"
	>

<channel>
	<title>套件 &#8211; 科技島-掌握科技新聞、科技職場最新資訊</title>
	<atom:link href="https://www.technice.com.tw/tag/%e5%a5%97%e4%bb%b6/feed/" rel="self" type="application/rss+xml" />
	<link>https://www.technice.com.tw</link>
	<description>專注於科技新聞、科技職場、科技知識相關資訊，包含生成式AI、人工智慧、Web 3.0、區塊鏈、科技職缺百科、生物科技、軟體發展、雲端技術等豐富內容，適合熱衷科技及從事科技專業人事第一手資訊的平台。</description>
	<lastBuildDate>Mon, 26 Sep 2022 03:44:42 +0000</lastBuildDate>
	<language>zh-TW</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.4.2</generator>

<image>
	<url>https://www.technice.com.tw/wp-content/uploads/2022/12/cropped-wordpress_512x512-150x150.png</url>
	<title>套件 &#8211; 科技島-掌握科技新聞、科技職場最新資訊</title>
	<link>https://www.technice.com.tw</link>
	<width>32</width>
	<height>32</height>
</image> 
<site xmlns="com-wordpress:feed-additions:1">223945996</site>	<item>
		<title>不知如何選套件？教你 4 招來避雷！（下）｜專家論點【林鼎淵】</title>
		<link>https://www.technice.com.tw/experience/19543/</link>
					<comments>https://www.technice.com.tw/experience/19543/#respond</comments>
		
		<dc:creator><![CDATA[林鼎淵]]></dc:creator>
		<pubDate>Mon, 26 Sep 2022 02:10:00 +0000</pubDate>
				<category><![CDATA[產業]]></category>
		<category><![CDATA[專家論點]]></category>
		<category><![CDATA[套件]]></category>
		<category><![CDATA[實戰範例]]></category>
		<category><![CDATA[工程師]]></category>
		<category><![CDATA[林鼎淵]]></category>
		<category><![CDATA[科技業]]></category>
		<guid isPermaLink="false">https://www.technice.com.tw/?p=19543</guid>

					<description><![CDATA[<p><img width="1200" height="627" src="https://www.technice.com.tw/wp-content/uploads/2022/09/image-2-2.png" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="image 2 2" decoding="async" srcset="https://www.technice.com.tw/wp-content/uploads/2022/09/image-2-2.png 1200w, https://www.technice.com.tw/wp-content/uploads/2022/09/image-2-2-300x157.png 300w, https://www.technice.com.tw/wp-content/uploads/2022/09/image-2-2-1024x535.png 1024w, https://www.technice.com.tw/wp-content/uploads/2022/09/image-2-2-768x401.png 768w" sizes="(max-width: 1200px) 100vw, 1200px" title="不知如何選套件？教你 4 招來避雷！（下）｜專家論點【林鼎淵】 1"></p>
<p>紙上得來終覺淺，讓我們依照上篇文章提供的 4 個方法，透過實戰了解如何選出合適的套件吧！<content><!-- wp:image {"sizeSlug":"large"} --></p>
<figure class="wp-block-image size-large"><img src="https://images.unsplash.com/photo-1518644730709-0835105d9daa?ixlib=rb-1.2.1&amp;ixid=MnwxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8&amp;auto=format&amp;fit=crop&amp;w=1170&amp;q=80" alt=""/><figcaption>圖片來源：unsplash</figcaption></figure>
<p><!-- /wp:image --></p>
<p><!-- wp:quote --></p>
<blockquote class="wp-block-quote">
<p>紙上得來終覺淺，絕知此事要躬行。</p>
<p><cite>陸游</cite></p></blockquote>
<p><!-- /wp:quote --></p>
<p><!-- wp:paragraph --></p>
<p>接下來讓我們<a rel="noreferrer noopener" href="https://www.technice.com.tw/techmanage/19480/" target="_blank">依照上篇文章提供的 4 個方法</a>，透過實戰了解如何選出合適的套件吧！</p>
<p><!-- /wp:paragraph --></p>
<p><!-- wp:heading --></p>
<h2>▋目標：需要一個能取得專案環境變數的套件</h2>
<p><!-- /wp:heading --></p>
<p><!-- wp:paragraph --></p>
<p>以軟體開發來說，我們會把散佈在各個檔案，且在不同環境需要調整或是保密的參數，集合到一個檔案裡面，這樣專案就能在不同的環境中快速遷移（ex：資料庫帳密、ip、網址...）。</p>
<p><!-- /wp:paragraph --></p>
<p><!-- wp:paragraph --></p>
<p>這個檔案我們稱它為環境檔（.env），以 Node.js 專案來說，可以透過套件讀取環境檔的參數。</p>
<p><!-- /wp:paragraph --></p>
<p><!-- wp:paragraph --></p>
<p>如果我們在&nbsp;<a rel="noreferrer noopener" href="https://www.npmjs.com/" target="_blank">npm 網站</a>&nbsp;上，以「env」為搜尋條件會得到如下結果：</p>
<p><!-- /wp:paragraph --></p>
<p><!-- wp:image {"sizeSlug":"large"} --></p>
<figure class="wp-block-image size-large"><img src="https://imgur.com/DuAb27N.png" alt=""/></figure>
<p><!-- /wp:image --></p>
<p><!-- wp:paragraph --></p>
<p>從左上角我們可以看到總共找到了 20 個套件，但哪個才符合我們需求呢？</p>
<p><!-- /wp:paragraph --></p>
<p><!-- wp:heading --></p>
<h2>▋從活躍度來判斷</h2>
<p><!-- /wp:heading --></p>
<p><!-- wp:paragraph --></p>
<p>我們需要的功能會往往有很多的套件可以完成，但儘管搜尋到的套件很多，但通常符合需求的都在前幾個；這裡我們將前兩個套件（<a href="https://www.npmjs.com/package/env" target="_blank" rel="noreferrer noopener">env</a>、<a href="https://www.npmjs.com/package/dotenv" target="_blank" rel="noreferrer noopener">dotenv</a>）用活躍度來比較。</p>
<p><!-- /wp:paragraph --></p>
<p><!-- wp:html --></p>
<p><style>
.tg  {border-collapse:collapse;border-spacing:0;}
.tg td{border-color:black;border-style:solid;border-width:1px;font-family:Arial, sans-serif;font-size:14px;
  overflow:hidden;padding:10px 5px;word-break:normal;}
.tg th{border-color:black;border-style:solid;border-width:1px;font-family:Arial, sans-serif;font-size:14px;
  font-weight:normal;overflow:hidden;padding:10px 5px;word-break:normal;}
.tg .tg-fymr{border-color:inherit;font-weight:bold;text-align:left;vertical-align:top}
.tg .tg-0pky{border-color:inherit;text-align:left;vertical-align:top}
</style>
</p>
<table class="tg">
<thead>
<tr>
<th class="tg-fymr"><span style="font-weight:700">套件</span></th>
<th class="tg-fymr"><span style="font-weight:700;font-style:normal">env</span></th>
<th class="tg-fymr"><span style="font-weight:700">dotenv</span></th>
</tr>
</thead>
<tbody>
<tr>
<td class="tg-0pky"><span style="font-weight:400;font-style:normal">最後發布時間（Last publish）</span></td>
<td class="tg-0pky">11 years ago</td>
<td class="tg-0pky">16 days ago</td>
</tr>
<tr>
<td class="tg-0pky">每週下載次數（Weekly Downloads）</td>
<td class="tg-0pky">5,362</td>
<td class="tg-0pky">28,017,205</td>
</tr>
<tr>
<td class="tg-0pky">版本（Version）</td>
<td class="tg-0pky">0.0.2</td>
<td class="tg-0pky">16.0.2</td>
</tr>
</tbody>
</table>
<p><!-- /wp:html --></p>
<p><!-- wp:paragraph --></p>
<p>透過上表我們可以得知「dotenv」是更有保障的套件。</p>
<p><!-- /wp:paragraph --></p>
<p><!-- wp:heading --></p>
<h2>▋確認 Issues 狀況</h2>
<p><!-- /wp:heading --></p>
<p><!-- wp:paragraph --></p>
<p>既然「dotenv」獲得壓倒性優勢，我們就來看看他的「Issues」的狀況。</p>
<p><!-- /wp:paragraph --></p>
<p><!-- wp:image {"sizeSlug":"large"} --></p>
<figure class="wp-block-image size-large"><img src="https://imgur.com/jiJkFuH.png" alt=""/></figure>
<p><!-- /wp:image --></p>
<p><!-- wp:paragraph --></p>
<p>點進去後，我們可以看到他「Open issues 與 Closed issues 的比例」低於 10%，算是相當穩定的套件；且右上角的 Star 數量高達 16k，有人氣的套件也是一種品質保證。</p>
<p><!-- /wp:paragraph --></p>
<p><!-- wp:image {"sizeSlug":"large"} --></p>
<figure class="wp-block-image size-large"><img src="https://imgur.com/l0zFYc7.png" alt=""/></figure>
<p><!-- /wp:image --></p>
<p><!-- wp:heading --></p>
<h2>▋閱讀文件</h2>
<p><!-- /wp:heading --></p>
<p><!-- wp:paragraph --></p>
<p>在「dotenv」的 README 文件上，它明確說明自己有讀取「.env」檔案的功能，並給出詳細的使用範例。</p>
<p><!-- /wp:paragraph --></p>
<p><!-- wp:image {"sizeSlug":"large"} --></p>
<figure class="wp-block-image size-large"><img src="https://imgur.com/yk7PAAR.png" alt=""/></figure>
<p><!-- /wp:image --></p>
<p><!-- wp:heading --></p>
<h2>▋試用範例程式碼</h2>
<p><!-- /wp:heading --></p>
<p><!-- wp:paragraph --></p>
<p>在試用 Sample Code 前筆者再提醒一下，如果使用上遇到問題，可以到 Issues 的地方看看；過去我就曾遇過同一款套件，在不同框架下的使用方式略有不同，最後在 Issues 裡面參考他人的方案才順利解決。</p>
<p><!-- /wp:paragraph --></p>
<p><!-- wp:image {"sizeSlug":"large"} --></p>
<figure class="wp-block-image size-large"><img src="https://imgur.com/QmMmJMx.png" alt=""/></figure>
<p><!-- /wp:image --></p>
<p><!-- wp:paragraph --></p>
<p>筆者這邊也依照文件試用給大家看。</p>
<p><!-- /wp:paragraph --></p>
<p><!-- wp:image {"sizeSlug":"large"} --></p>
<figure class="wp-block-image size-large"><img src="https://imgur.com/ShJ2ji4.png" alt=""/></figure>
<p><!-- /wp:image --></p>
<p><!-- wp:paragraph --></p>
<p>從上圖中，可以看到套件確實有印出我們需要的環境變數，可以初步判定它是一個合格的套件！</p>
<p><!-- /wp:paragraph --></p>
<p><!-- wp:paragraph --></p>
<p>關於如何選出合適套件的系列文到這邊就告個段落嚕～希望大家日後在開發上都可以找到合適的套件。</p>
<p><!-- /wp:paragraph --></p>
<p><!-- wp:paragraph --></p>
<p>☛ 如果想更深入認識我，可以 Follow 筆者的<a rel="noreferrer noopener" href="https://dean-lin.medium.com/" target="_blank">技術部落格</a>&nbsp;。<br />☛ 如果對工程師的職涯感到迷茫，筆者<a rel="noreferrer noopener" href="https://www.tenlong.com.tw/products/9786263331525" target="_blank">最近出版的新書</a>&nbsp;也許能給你帶來不同的觀點。</p>
<p><!-- /wp:paragraph --></content></p>
<p>這篇文章 <a rel="nofollow" href="https://www.technice.com.tw/experience/19543/">不知如何選套件？教你 4 招來避雷！（下）｜專家論點【林鼎淵】</a> 最早出現於 <a rel="nofollow" href="https://www.technice.com.tw">科技島-掌握科技新聞、科技職場最新資訊</a>。</p>
]]></description>
		
					<wfw:commentRss>https://www.technice.com.tw/experience/19543/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">19543</post-id>	</item>
		<item>
		<title>不知如何選套件？教你 4 招來避雷！（上）｜專家論點【林鼎淵】</title>
		<link>https://www.technice.com.tw/techmanage/19480/</link>
					<comments>https://www.technice.com.tw/techmanage/19480/#respond</comments>
		
		<dc:creator><![CDATA[林鼎淵]]></dc:creator>
		<pubDate>Wed, 21 Sep 2022 02:30:00 +0000</pubDate>
				<category><![CDATA[生活]]></category>
		<category><![CDATA[專家論點]]></category>
		<category><![CDATA[產業]]></category>
		<category><![CDATA[套件]]></category>
		<category><![CDATA[工程師]]></category>
		<category><![CDATA[林鼎淵]]></category>
		<category><![CDATA[科技業]]></category>
		<category><![CDATA[避雷]]></category>
		<guid isPermaLink="false">https://www.technice.com.tw/?p=19480</guid>

					<description><![CDATA[<p><img width="1200" height="627" src="https://www.technice.com.tw/wp-content/uploads/2022/09/image-10-1.png" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="image 10 1" decoding="async" srcset="https://www.technice.com.tw/wp-content/uploads/2022/09/image-10-1.png 1200w, https://www.technice.com.tw/wp-content/uploads/2022/09/image-10-1-300x157.png 300w, https://www.technice.com.tw/wp-content/uploads/2022/09/image-10-1-1024x535.png 1024w, https://www.technice.com.tw/wp-content/uploads/2022/09/image-10-1-768x401.png 768w" sizes="(max-width: 1200px) 100vw, 1200px" title="不知如何選套件？教你 4 招來避雷！（上）｜專家論點【林鼎淵】 2"></p>
<p>我們身處在一個開源工具大爆炸的時代，我們面對的不是沒有工具，而是工具太多不知道怎麼選，所以在了解套件的重要性後，更重要的是要知道如何選出適合的套件...<content><!-- wp:image {"sizeSlug":"large"} --></p>
<figure class="wp-block-image size-large"><img src="https://images.unsplash.com/photo-1518644730709-0835105d9daa?ixlib=rb-1.2.1&amp;ixid=MnwxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8&amp;auto=format&amp;fit=crop&amp;w=1170&amp;q=80" alt=""/><figcaption>圖片來源：unsplash</figcaption></figure>
<p><!-- /wp:image --></p>
<p><!-- wp:paragraph --></p>
<p>我們身處在一個開源工具大爆炸的時代，每天都有許多套件發布到平台上供大家使用；但正因為開源工具爆炸，我們要面對的不是沒有工具，而是工具太多不知道怎麼選，所以在了解套件的重要性後，更重要的是要知道如何選出適合的套件。</p>
<p><!-- /wp:paragraph --></p>
<p><!-- wp:quote --></p>
<blockquote class="wp-block-quote">
<p>如果你還不清楚套件對工程師的重要性，可以先參考<a rel="noreferrer noopener" href="https://www.technice.com.tw/techmanage/18784/" target="_blank">這篇文章</a>。</p>
</blockquote>
<p><!-- /wp:quote --></p>
<p><!-- wp:paragraph --></p>
<p>套件之所以會有這麼多，是因為不管大神還是新手都可以發布套件，這造成套件本身的良莠不齊，不過我們可以透過文中提供的「方法」，初步判斷套件是否符合需求，以及品質是否穩定。</p>
<p><!-- /wp:paragraph --></p>
<p><!-- wp:quote --></p>
<blockquote class="wp-block-quote">
<p>本篇文章以<a rel="noreferrer noopener" href="https://www.npmjs.com/" target="_blank">&nbsp;npm 套件</a>舉例。</p>
</blockquote>
<p><!-- /wp:quote --></p>
<p><!-- wp:heading --></p>
<h2>▋套件活躍度</h2>
<p><!-- /wp:heading --></p>
<p><!-- wp:paragraph --></p>
<p>筆者會從 3 個面向綜合考量套件活躍度：</p>
<p><!-- /wp:paragraph --></p>
<p><!-- wp:list {"ordered":true} --></p>
<ol>
<li><strong>套件最後發布時間( Last publish)</strong>：太久沒更新的套件請謹慎選用。</li>
<li><strong>每週下載次數(Weekly Downloads)</strong>：下載人數多的套件穩定性通常較高，至少遇到問題時比較有人一起討論。</li>
<li><strong>版本(Version)</strong>：一般來說 1.0.0 以前的版本會有穩定性上的疑慮，盡可能避免使用。</li>
</ol>
<p><!-- /wp:list --></p>
<p><!-- wp:heading --></p>
<h2>▋套件 Issues 處理狀況</h2>
<p><!-- /wp:heading --></p>
<p><!-- wp:paragraph --></p>
<p>除了活躍度外，該套件「open issues 與 closed issues 的比例」也是重要指標；<strong>如果 open issues 的比例超過 20%，筆者良心建議你要點進去看看別人遇到了哪些問題</strong>。</p>
<p><!-- /wp:paragraph --></p>
<p><!-- wp:quote --></p>
<blockquote class="wp-block-quote">
<p>太新的套件可能不穩定、太舊的套件可能沒人維護。</p>
</blockquote>
<p><!-- /wp:quote --></p>
<p><!-- wp:heading --></p>
<h2>▋閱讀文件確認是否符合需求</h2>
<p><!-- /wp:heading --></p>
<p><!-- wp:paragraph --></p>
<p>有些套件光看名稱好像是自己想要的，實際用下來卻發現缺東缺西，為了避免這類的問題發生，導入套件前請先詳閱文件。</p>
<p><!-- /wp:paragraph --></p>
<p><!-- wp:quote --></p>
<blockquote class="wp-block-quote">
<p>盡量不要選文件讓人難以理解的套件。</p>
</blockquote>
<p><!-- /wp:quote --></p>
<p><!-- wp:heading --></p>
<h2>▋先試用範例程式碼（sample code）</h2>
<p><!-- /wp:heading --></p>
<p><!-- wp:paragraph --></p>
<p>有些簡介把套件的功能吹捧的超強，但這個套件到底能否導入專案，要先試用範例程式才知道。常見問題如下：</p>
<p><!-- /wp:paragraph --></p>
<p><!-- wp:list --></p>
<ul>
<li><strong>與專案的 Node.js 版本不合</strong>：因為 Node.js 版本更新速度極快，而有些套件的功能是相依於 Node.js 版本的；如果專案有歷史背景難以升級，就只能先去看套件的 release note，祈禱套件過去有發佈與專案 Node.js 相合的版本。與此同時，也一同評估將專案 Node.js 升版的必要性。</li>
<li><strong>說明文件根本是錯的</strong>：因為套件通常是開源免費的，所以提供的文件不一定都是對的，如果你一直執行失敗，可以先到 open issues 看看有沒有難兄難弟。</li>
</ul>
<p><!-- /wp:list --></p>
<p><!-- wp:paragraph --></p>
<p>相信文中所提到的 4 個方法，可以很大程度幫大家避雷了，如果您有其他選套件的好方法，也歡迎留言分享。</p>
<p><!-- /wp:paragraph --></p>
<p><!-- wp:paragraph --></p>
<p><a href="https://www.technice.com.tw/experience/19543/">在下篇文章中</a>，筆者會舉出實際案例，幫助大家學以致用。</p>
<p><!-- /wp:paragraph --></p>
<p><!-- wp:paragraph --></p>
<p>☛ 如果想更深入認識我，可以 Follow 筆者的<a rel="noreferrer noopener" href="https://dean-lin.medium.com/" target="_blank">技術部落格</a>&nbsp;。<br />☛ 如果對工程師的職涯感到迷茫，筆者<a rel="noreferrer noopener" href="https://www.tenlong.com.tw/products/9786263331525" target="_blank">最近出版的新書</a>&nbsp;也許能給你帶來不同的觀點。</p>
<p><!-- /wp:paragraph --></content></p>
<p>這篇文章 <a rel="nofollow" href="https://www.technice.com.tw/techmanage/19480/">不知如何選套件？教你 4 招來避雷！（上）｜專家論點【林鼎淵】</a> 最早出現於 <a rel="nofollow" href="https://www.technice.com.tw">科技島-掌握科技新聞、科技職場最新資訊</a>。</p>
]]></description>
		
					<wfw:commentRss>https://www.technice.com.tw/techmanage/19480/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">19480</post-id>	</item>
		<item>
		<title>工程師為什麼需要套件？它能帶來哪些幫助？｜專家論點【林鼎淵】</title>
		<link>https://www.technice.com.tw/techmanage/18784/</link>
					<comments>https://www.technice.com.tw/techmanage/18784/#respond</comments>
		
		<dc:creator><![CDATA[林鼎淵]]></dc:creator>
		<pubDate>Mon, 19 Sep 2022 02:10:00 +0000</pubDate>
				<category><![CDATA[生活]]></category>
		<category><![CDATA[專家論點]]></category>
		<category><![CDATA[產業]]></category>
		<category><![CDATA[善用工具]]></category>
		<category><![CDATA[套件]]></category>
		<category><![CDATA[工程師]]></category>
		<category><![CDATA[林鼎淵]]></category>
		<category><![CDATA[科技業]]></category>
		<guid isPermaLink="false">https://www.technice.com.tw/?p=18784</guid>

					<description><![CDATA[<p><img width="1200" height="627" src="https://www.technice.com.tw/wp-content/uploads/2022/09/image-10.png" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="image 10" decoding="async" srcset="https://www.technice.com.tw/wp-content/uploads/2022/09/image-10.png 1200w, https://www.technice.com.tw/wp-content/uploads/2022/09/image-10-300x157.png 300w, https://www.technice.com.tw/wp-content/uploads/2022/09/image-10-1024x535.png 1024w, https://www.technice.com.tw/wp-content/uploads/2022/09/image-10-768x401.png 768w" sizes="(max-width: 1200px) 100vw, 1200px" title="工程師為什麼需要套件？它能帶來哪些幫助？｜專家論點【林鼎淵】 3"></p>
<p>如果屠龍刀是系統贈送的武器，那為什麼要自己打造一把破鐵刀？<content><!-- wp:image {"sizeSlug":"large","linkDestination":"media"} --></p>
<figure class="wp-block-image size-large"><a href="https://images.unsplash.com/photo-1518644730709-0835105d9daa?ixlib=rb-1.2.1&amp;ixid=MnwxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8&amp;auto=format&amp;fit=crop&amp;w=1170&amp;q=80"><img src="https://images.unsplash.com/photo-1518644730709-0835105d9daa?ixlib=rb-1.2.1&amp;ixid=MnwxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8&amp;auto=format&amp;fit=crop&amp;w=1170&amp;q=80" alt=""/></a><figcaption>圖片來源：unsplash</figcaption></figure>
<p><!-- /wp:image --></p>
<p><!-- wp:paragraph --></p>
<p><strong>如果屠龍刀是系統贈送的武器，那為什麼要自己打造一把破鐵刀？</strong></p>
<p><!-- /wp:paragraph --></p>
<p><!-- wp:paragraph --></p>
<p>有些人在面對需求時，不喜歡直接使用市面上功能完善的套件，反而執著於每個功能都要從零開始手工打造；如果手工打造的品質穩定也就算了，但通常最後寫出來的 Bug 比市面上套件還要多很多⋯</p>
<p><!-- /wp:paragraph --></p>
<p><!-- wp:quote --></p>
<blockquote class="wp-block-quote">
<p>人類的進步，大部分是繼承前人的知識繼續發展，就像是你需要了解怎麼使用電腦，但不需要自己買材料親手做出一台電腦。</p>
</blockquote>
<p><!-- /wp:quote --></p>
<p><!-- wp:paragraph --></p>
<p>就拿前端來舉例，假使今天要開發一個後台管理系統，如果堅持不使用框架，選擇用最純粹的 HTML、JavaScript、CSS 來開發，不但要花更多時間，最後做出來的成品還可能比用框架速成的結果更差。</p>
<p><!-- /wp:paragraph --></p>
<p><!-- wp:quote --></p>
<blockquote class="wp-block-quote">
<p>你可以把框架想像成，由各種常見＆穩定套件組合起來的大禮包，使用者依照框架的規範進行開發。</p>
</blockquote>
<p><!-- /wp:quote --></p>
<p><!-- wp:paragraph --></p>
<p>那套件具體有哪些優點呢？以下是筆者感受最深的幾點：</p>
<p><!-- /wp:paragraph --></p>
<p><!-- wp:list {"ordered":true} --></p>
<ol>
<li>能夠快速評估專案功能的可行性。</li>
<li>可以更準確預估每個功能完成的時間。</li>
<li>節省大量重頭開始寫功能的時間。</li>
<li>可以專心撰寫自己的程式邏輯。</li>
<li>因為部分功能透過套件處理，所以需要維護的程式也減少了。</li>
</ol>
<p><!-- /wp:list --></p>
<p><!-- wp:paragraph --></p>
<p>在了解套件對我們工作的幫助後，接下來要思考的問題是「如何評估＆導入套件」。</p>
<p><!-- /wp:paragraph --></p>
<p><!-- wp:paragraph --></p>
<p>以筆者過去的經驗來說，有 95% 以上的套件，我只會看它的官方文檔來了解如何使用，基本上不太會去看這份套件的原始碼，<strong>會去看它怎麼寫的套件通常不是因為它寫的太好，而是因為它寫的太爛</strong>，因為 Bug 影響到功能，導致開發人員需要去修正，甚至去評估是否有其他替代方案。</p>
<p><!-- /wp:paragraph --></p>
<p><!-- wp:paragraph --></p>
<p>我們導入框架＆套件是為了節省開發時間，但如果為了解決它的 Bug 反而花了更多時間（甚至無法解決），那就真的得不償失了。</p>
<p><!-- /wp:paragraph --></p>
<p><!-- wp:paragraph --></p>
<p>為了減少這樣的悲劇發生，在後續的文章中，筆者會分享幾個<a href="https://www.technice.com.tw/techmanage/19480/">選擇套件時要注意的重點</a>，並搭配<a href="https://www.technice.com.tw/experience/19543/">實戰案例</a>，讓大家在開發的道路上盡可能不要踩雷。</p>
<p><!-- /wp:paragraph --></p>
<p><!-- wp:paragraph --></p>
<p>☛ 如果想更深入認識我，可以 Follow 筆者的 <a href="https://dean-lin.medium.com/" target="_blank" rel="noreferrer noopener">技術部落格</a>&nbsp;。<br />☛ 如果對工程師的職涯感到迷茫，筆者 <a href="https://www.tenlong.com.tw/products/9786263331525" target="_blank" rel="noreferrer noopener">最近出版的新書</a>&nbsp;也許能給你帶來不同的觀點。</p>
<p><!-- /wp:paragraph --></content></p>
<p>這篇文章 <a rel="nofollow" href="https://www.technice.com.tw/techmanage/18784/">工程師為什麼需要套件？它能帶來哪些幫助？｜專家論點【林鼎淵】</a> 最早出現於 <a rel="nofollow" href="https://www.technice.com.tw">科技島-掌握科技新聞、科技職場最新資訊</a>。</p>
]]></description>
		
					<wfw:commentRss>https://www.technice.com.tw/techmanage/18784/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">18784</post-id>	</item>
	</channel>
</rss>
