前端工程师应该具备的三种思维_PHP
编者按:本文通过逻辑思维,商业思维,设计思维三种维度来匹配你是否一位合格的前端工程师。因为前端工程师不仅仅是负责接资料,捞数据,做个回应等这些杂事,他们应该更加需要去跟后端工程师、设计、PM进行沟通。所以,团队合作,协调配合等等都需要考虑代码以外更多的事情。
如果你是一个天才工程师(马上可以离开),可以独立完成一个很多事情,你可以是一个怪咖,因为我相信没有一个人不会不佩服你。但现实归现实,多数人都不是天才,而我们在职场上也不是单打独斗,我们需要团队合作,需要协调和配合,需要考虑除了代码以外的更多事情。
前端工程师,也不仅仅只是负责接资料,捞数据,做个回应。当然只做这些也并没有不对,但我们需要和后端工程师沟通,我们也需要和设计沟通,也需要和 PM 沟通,怎么做才是对这三方都比较有好处?
逻辑思维
在开始写某一段代码的时候,想一下它会用在哪里,会重复用吗? 它以后会不会变,如果会变,那可以怎样变?一般网页结构的变化,虽然有很多但是也有一个根据,这个根据就是可以预先估计好的。没有一个案子,是不会「不改」的,很多时候你都是要一边做一边改,甚至可能会来个乾坤大挪移。当真的需要发生变动和修改的时候,你有什么对策?这些都是需要想好,并且建立在一个逻辑上。
通常专业的设计师,设计一个网页的元素都是同质性很高,等比或对比的,所以代码按理也是可以重复用的。所以为何你要学会用 CSS preprocessor (Sass,stylus,less),写一个 Mixin 或一个变量,一开始用你会觉得很麻烦,但是用了你就回不去了,不但提高你的效率还提高了你的准确率。
工程师的世界就如武林,大家都各自修炼,每天都有新的祕籍,大家都很好奇跑去修炼一下,希望有天成为武林高手。这也是提升你见识和专业的潜动力,如果你没有好奇心,看的和懂得东西太少,逻辑自然不会跟上时代。要保持不断的学习,来磨练自己的逻辑思维。
逻辑思维某程度,就是你的程序专业能力,除了能写出来还要可维护,可阅读。当事情建立在一个很好的逻辑上,那么出错几率就会比较低,和你工作的人也会比较愉快。
可以把一件事做的很好,那是师傅;可以把一件事做好和预测未来的事,那才是专家。
商业思维
PM、老板或者客户,都会问你,「你需要多少时间」,如果说的太短,可能会做不完;如果说的太长,也不可能,这是一个怎么回答怎么死的问题。有时候,需要换一个立场,站在第三方的角度思考。我们的完成度,和他们的完成度可能是不一样的。
我们把案子的细节分成两种情况,一种是你已经有经验,可以预估时间的;一种是你没有做过或你很陌生的,你没有时间估计的基础。
那么提出一个,他们可以最低接受的标准,例如一个 App 网站,最低标准需要一个首页,和一个链接去下载 app 的 2 个按钮,这些都是可以预估的。而剩下的,你需要 Research 一下,之后再给一个比较有根据的时间。估计一个案子需要多少时间做完,是非常非常的重要,因为你消耗的是一组人的时间,不是你自己的(除非你自己一个人做,或者你是老板)。如果你估算错了,后面就会延期,做不出来没有很大的关系,最重要是把问题解决,提出你的解决方法,什么样的方法才可以达到解决问题的目的。
换一个立场提出解决方案,对事情是有帮助的,对公司或客户是有帮助的,客户不会在乎你解决不了手机网页看不到 20 个栏位的 table 那个问题,但是客户很乐意听你说,这样的 Table 不好看,可以换一个显示的方法。客户也不太在意你是用 Rails 还是 php(有些是很在意,他们假装他们懂),可以购物和发文就好。
前端工程师可能很容易接触到客户的投诉,所以有些东西没有想好,就会很麻烦。做个网站,换作你是网友或客户,你会满意你自己做的网站吗?
设计思维
很多时候,前端工程师本身也是设计师,但是也有很多是本身是前端工程师也是后端工程师,设计和前端是分割不开的。当然我这里说的设计,不是真的要你弄一个画面或完整的设计图。
It’s not just what it looks like and feels like. Design is how it works. —Steve Jobs
前端的设计是指一个画面或元素,如何被执行和创造,移动或消除,这个设计在不同的宽度和高度,不同的装置看,效果是怎样,考虑进去就是你的设计思维,怎么把设计师的画面弄成一个活生生的网页,要用设计师的角度去思考,才能有办法把设计图的概念充分的表达出来。
话说早前,收到一个「设计图」,上面有一个「X」,我问客户这是什么,他说是「回上一页」,为何回上一页是「X」,这不是一个 popup 也不是一个 modal,同时这个图上还有很多不同颜色和大小的「X」,分别代表了「删除」、「关闭」、「滑下」,这是一个不太合理的设计。
设计的思维,会直接影响你写的代码结构和网页结构,因为你看不出设计的重点在哪里,怎么写才可以达到设计师要求的效果,你没有办法好好的组织你的结构和元素,就无法好好把网页拼凑出来。这不但大大降低了你的效率,做出来的东西也不会一致。可能一个网站,就出现几种本该一样,结果「很像」但是不一样的按钮,因为你用了几个 class 和不同结构来做。你一开始就没有好好思考设计。
你可以做什么
-
没事要练功,FB 逛几分钟就好,不需要留恋太久。
-
做好一个网站,自己玩一下,给你朋友玩一下,问一下他们的意见?多问几个。
-
多看设计图,看思考一下你会怎么做。
本文出自:kimix 的博客

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

AI Hentai Generator
免費產生 AI 無盡。

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

熱門話題

前端工程師職責解析:主要做什麼工作?隨著互聯網的快速發展,前端工程師作為一個非常重要的職業角色,扮演著連接使用者與網站應用程式的橋樑,起著至關重要的作用。那麼,前端工程師主要做些什麼工作呢?本文將對前端工程師的職責進行解析,讓我們來一探究竟。一、前端工程師的基本職責網站開發與維護:前端工程師負責網站的前端開發工作,包括編寫網站的HTML、CSS和JavaScr

前端工程師的主要職責包括網頁開發、互動設計、前端邏輯開發、響應式設計、效能最佳化、與後端對接、瀏覽器相容性、版本控制和協作,以及追蹤新技術。前端工程師致力於創建使用者體驗良好且效能卓越的網頁。

Java工程師職責:1、Java工程師負責分析和理解客戶或公司的需求,並根據這些需求設計軟體解決方案,需要與客戶或團隊成員進行溝通,確保理解需求的準確性和完整性;2、Java工程師需要熟悉並掌握各種Java開發工具和框架;3、Java工程師還需要熟悉資料庫管理系統,如MySQL、Oracle或SQL Server等;4、在開發過程中,Java工程師需要進行系統測試和調試等等。

你有興趣成為MLOps工程師嗎?今天就詳細了解MLOps工程師角色。所以已經建立了一個機器學習模型。它在驗證數據集上達到了預期的性能。很高興能夠應用資料科學和機器學習技能來建立此模型。但是,意識到該模型在Jupyternotebook中在本機上運作良好(目前)並不是很有幫助。為了讓使用者從模型中受益並讓企業利用機器學習,必須將模型部署到生產環境中。然而,部署和維護機器學習模型並非沒有挑戰。在開發環境中表現良好的模型在生產環境中可能會慘敗。這可能是由於數據和概念漂移以及其他導致性能下降的因素

Go語言開發工程師必看:這些大廠招募狀況一覽!隨著網路產業的快速發展,Go語言作為一種高效、穩定且易於使用的程式語言,越來越受到企業的青睞。許多大型網路公司紛紛開始招募Go語言開發工程師,為了幫助有意從事該領域的開發者更了解市場需求,本文將為大家介紹一些知名大廠的招募情況。騰訊科技:身為中國頗具影響力的科技巨頭之一,騰訊一直在擴大其技術團隊規模。

Java工程師的日常工作是怎麼樣的?隨著網路的快速發展,軟體工程師成為了一個熱門職業。而Java工程師作為最主要的開發語言之一,也成為了許多IT從業人員的首選。那麼,身為Java工程師,他們的日常工作是怎麼樣的呢?首先,Java工程師的主要工作是開發和維護Java語言相關的軟體系統和應用。他們通常會參與軟體開發的整個生命週期中,從需求分析與討論、系統設計、編碼

前端工程師是否適合學習Go語言?隨著網路技術的不斷發展,前端工程師不再局限於各種前端框架和工具的使用,更多的時候需要與後端進行介面對接和資料互動。在這種情況下,前端工程師學習一門後端語言是非常有幫助的,而Go語言作為一門快速、可靠、高效的後端語言,是否適合前端工程師學習呢?接下來,我們就來探討一下。為什麼前端工程師應該學習Go語言呢?首先,Go語言是一

3月11日,國際領先的AI數據技術公司星塵數據(StardustAI)在北京舉辦2024年春季產品發表會,重磅推出MorningStar,一款針對AI的數據閉環產品。 MorningStar是首款專注資料價值發現的AI資料平台,相較於傳統的資料管理工具,這款理念先進、操作便利、功能豐富的AI資料發現、管理、協作、迭代平台,專為發現資料價值,加速模型迭代,解決AI資料債問題打造,能支撐企業Al資料高效率迭代的關鍵環節,避免資料債風險累積、低價值資料成本浪費、模型訓練與應用效果回饋鍊長等問題。 ▲Mor
