一枚菜鳥前端工程師月度工作總結

前言

每個月進行工作總結,有利於自己回顧在這個月完成了什麼工作,有哪些地方做的好,想想還能不能做的更好;哪些地方做的不好遇到哪些問題,記錄下來,審視自己避免重蹈覆轍。以下從技術、工作、學習上來總結一下自己這個月遇到了什麼問題,有哪些感悟以及未來如何去做一個梳理。

技術

在技術上的收穫來源於具體的場景和解決的問題。這周遇到了兩個問題。一是如果是多條件判斷賦值怎麼進行優化代碼;二是頁面左右外邊距固定,中間是兩列自適應的多個盒子內容,兩列之間有20px的外邊距怎麼實現這個佈局。
一多條件判斷賦值怎麼進行優化代碼
在這裏,同事給我的建議是通過對象的鍵值實現

//bad code
let name;
function getName(index) {
  if (index == 'zhangsan') {
    name = '張三'
  } else if (index == 'lisi') {
    name = '李四'
  } else if (index == 'wangwu') {
    name = '王五'
  }
}

//good code 
let obj = {
  zhangsan: {
    name: '張三'
  },
  lisi: {
    name: '李四'
  },
  wangwu: {
    name: '王五'
  }
let name;
function getName(index) {
  name = obj[index].name;
}
}

二是如何實現中間兩列自適應
剛開始我的思路是通過calc()這個函數來計算自適應的寬度,不過小組負責人說使用這個方法可能存在性能問題,於是和同事討論得到了一個更好的解決方案:在外層再包個盒子,給外層盒子50%的寬度,外層父盒子寬度100%,外層盒子的外邊距通過子盒子外邊距撐開,具體實現代碼如下:

<style>
  .wrap {
    box-sizing: border-box;
    padding: 0 100px;
    background-color: pink;
  }
  .wrap .content {
    width: 100%;
  }
  .wrap .item {
    width: 50%;
    float: left;
    margin-top: 10px;
  }
  .wrap .content-area {
    background-color: green;
  }
  .wrap .item:nth-of-type(2n+1) .content-area{
    margin-right: 10px;
  }
  .wrap .item:nth-of-type(2n) .content-area{
    margin-left: 10px;
  }
  .clearfix:after {
    content: ".";
    display: block;
    height: 0;
    visibility: hidden;
    clear: both;
  }
  .clearfix {
    zoom: 1;
  }
</style>

<div class="wrap">
  <div class="content clearfix">
    <div class="item">
      <div class="content-area">1</div>
    </div>
    <div class="item">
      <div class="content-area">2</div>
    </div>
    <div class="item">
      <div class="content-area">3</div>
    </div>
    <div class="item">
      <div class="content-area">4</div>
    </div>
  </div>
</div>

通過這兩個問題的解決,打開了我思考問題的門,以前在學校思考解決問題的方法時,只要想出一種解決方案就行了,可是在工作中講究的是最優的解決方案,給出思考後最好的解決方案。同時,自己寫的代碼要經過審查,要考慮代碼的可讀性和優化自己的代碼,提高自己代碼的性能。

工作

工作上要持有認真負責的態度,要懂得合作,實時保持溝通交流。作爲一名合格的前端工程師,不僅僅是完成自己的工作,在工作過程中要和產品經理,UI工程師,後臺工程師合作。工作中要和產品經理確認需求,討論需求可不可行,合不合理,知道這個需求是在什麼場景下使用的,解決用戶的什麼問題;設計上和UI工程師確認這樣設計的目的是什麼,這樣的設計對於代碼的實現能不能做到,合不合理,代碼實現後和預效果是否保持一致,有沒有更好的方式提升用戶的體驗;實現功能上要和後臺工程師確認接口,需要給後臺傳什麼樣的接口,參數是什麼類型的,同時後臺返回什麼數據給前端。對用戶操作錯誤後如何友好的給出提示,同時考慮代碼的安全性,如何讓自己的程序更健壯更安全;這些都是自己在工作中要做到和學習的。

學習

在目前工作的公司學習氛圍很濃,每星期都有技術分享和交流會,在交流學習方法時,項目經理的話使我印象很深刻。引用他的話意思就是說學習要講究方式方法,我們不能只是想學就去找些資料看看就完了,而是要制定自己的學習計劃,通過什麼標準來衡量自己的學習成果。
我很贊同他的觀點,學習要細化自己的學習目標,將一個大的學習計劃進行一步一步劃分,具體到每季度每個月每週每天要學習什麼,同時檢驗自己的學習成果,以前在學校學習的時候是通過考試來檢驗自己的學習成果,現在是通過寫博客輸出,技術交流,技術演講或者做項目的方式來檢驗自己的學習成果。

2019年的展望

現在距離2019只有不到十天的時間了,自己2019的學習計劃也將被提上日程,相信在2019年自己不僅僅收穫技術上和經驗上的提升,自己的視野和各項綜合能力也能得到進一步發展。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章