기술 향상을위한 25 가지 웹 개발 팁

경험을 대신 할 수 없다고 종종 말하지만 지름길이 있습니다. 노련한 개발자들과 이야기를 나눴습니다. 루프를 통해 수고하고 속성에 대해 매일 매일 노예로 만드는 사람들. 이 팁 모음은 코드면에서 직접 가져온 것입니다.

부적절하게 지정된 버퍼처럼 넘쳐나는 노하우의 googolplex가 필터링되어 25 개의 훌륭한 기능, 트릭 및 팁을 제공합니다. 개발자가 침묵을 지키는 오픈 소스 서비스, 모바일 프로그래밍 해킹 및 반응 형 개발 팁이 있습니다.

우리는 이전에 이러한 별의 비밀을 몇 가지 들어 보았지만 많은 것은 우리에게도 완전히 새로운 것입니다. 툴 벨트를 추가 할 수있는 두 개 이상의 도구를 찾으실 수 있습니다.

코딩

1. 목록 지우기

플로팅 요소를 지우는 것은 대부분의 웹 개발자에게 중요한 일입니다. 우리는 여전히 잡힐 수 있습니다. 예를 들어 높이를 설정하지 않고 플로팅 목록 요소를 지우려면 어떻게해야합니까? '이 작은 딜레마에 대한 답은 실제로 정말 간단합니다.'라고 Rhys Little은 말합니다. 플러그 앤 플레이 ,“플로팅 된 목록 요소가있는 목록 컨테이너에 다음 두 CSS 속성을 추가하기 만하면됩니다.”

display: block;overflow: hidden;

DOM 검사기로 목록 컨테이너를 확인하면 높이 속성이 자동으로 계산되어 문제가 해결되었음을 알 수 있습니다.



2. 샌드 박스

예를 들어 기술, CSS 효과 또는 새로운 종류의 전환을 개발하려면 샌드 박스 프로젝트로 수행하십시오. Creative Director는 '외부의 영향으로 실험을 깔끔하게 유지하면 무언가가 예상대로 작동하지 않는 경우 코드를 훨씬 쉽게 디버깅 할 수 있습니다.'라고 말합니다. 셰인 미엘 케 .

3. 웹 검사자

개발자들은 어떤 웹 인스펙터가 가장 좋은지에 따라 다르지만 우리가 가장 좋아하는 브라우저가 그것을 갖기 전에 우리가 어려움을 겪었다는 데 모두 동의합니다. 새로운 컨텍스트 '에스 폴 윌슨 Chrome 또는 Safari에서 실시간으로 CSS 변경 사항을 미리 볼 수 있다고 지적합니다. 요소를 마우스 오른쪽 버튼으로 클릭하고 '요소 검사'를 선택합니다. '적용된 모든 CSS가 오른쪽 검사 창에 표시됩니다. 여기에서 새 요소를 편집하거나 추가하여 변경 효과를 확인할 수 있습니다. '

웹 속성은 Mac의 Safari에서 기본적으로 접근 할 수 없습니다. 메뉴 모음에서 환경 설정> 고급> 개발 메뉴 표시로 이동하여 활성화합니다.

4. 방화범 이상

Chrome과 Safari에는 웹 검사기가 내장되어 있지만 마이크 발란 , 디지털 디자이너 해파리 원래 Firefox 개발자 도구 모음이 있습니다. Mike는 '여러 화면 크기에서 사이트를 테스트 할 때 이러한 작은 CSS 문제를 감지하는 데 완벽한 방법입니다.'라고 말합니다.

'Firebug는 하나의 브라우저 탭에 여러 화면 크기를 표시하는 기능을 추가했습니다. 즉, 사이트를 다시 테스트하기 위해 브라우저 너비를 변경할 필요가 없습니다.'

5. 한 번에 하나씩

벤 하들 , Didlr 개발자 wapple.net , 그는 단일 책임 원칙의 중요성을 충분히 강조 할 수 없다고 말합니다. “코드의 모든 객체에는 하나의 기능이 있어야합니다. CSS로도. 모든 스타일을 .button 클래스에 넣지 마십시오. .button-structure 및 .button-face 등으로 분할합니다 ...”

왜? 그렇게하지 않고 무언가가 깨지면 코드를 추적하여 어떤 객체가 문제인지, 버그가 DOM의 상위에서 상속되었는지 여부를 찾는 데 시간이 많이 걸리기 때문입니다.

6. 코딩 할 수 있습니까?

Ben은 또한 프레임 워크와 라이브러리로 돌아가는 것이 항상 최선의 답은 아니라고 생각합니다. '작은 프로젝트를 코딩하고 항상 예를 ​​들어 jQuery를 포함하는 경우 'Vanilla JS로이 작업을 수행 할 수 있습니까?'라고 생각하십시오.'실제로 JavaScript로 더 빠르고 더 효율적으로 수행 할 수 있습니다.

프로젝트 관리

7. 힘내 가져 오기

대규모 프로젝트에서 작업하는 경우 강력한 버전 관리 시스템이 필요합니다. 많은 개발자가 GitHub를 맹세하지만 프로젝트가 비공개 인 경우 단점이 있습니다. 코드는 GitHub의 서버에서 호스팅되며 공개적으로 사용할 수 있습니다. 사람들은 플러그 앤 플레이 권하다 GitLab .

Rhys Little은“GitLab은 GitHub와 매우 유사하지만 완전히 오픈 소스이며 자체 서버에 무료로 설정할 수 있습니다. “GitLab을위한 최상의 설정은 NGINX일각수 성능과 속도를 향상 시키려면-그러나 Apache와 Passenger도 작동합니다.

'이 배열의 가장 큰 장점은 커밋 할 때마다 모든 코드가 백업된다는 것입니다. 정말 유용한 diff 뷰어를 사용하여 각 커밋에서 변경된 내용을 볼 수 있습니다.'

8. 주석이 달린 코드

특히 팀 작업자는 다른 사람들이 코드를 이해해야한다는 점을 기억하십시오. 리소스를 사용하고 파일을 처리하십시오. Shane S. Mielke는“게으르지 마십시오. “항상 코드에 주석을 달고 레이어 이름을 지정하고 PSD 및 FLA를 구성하십시오. 파일을 더 체계적으로 구성할수록 사용자 나 다른 사용자가 작업 위치와 작동 방식을 쉽게 이해할 수 있습니다. '

9. 사이트 보안

웹 사이트를 사용하기 전에 웹 사이트를 실행하십시오. ASafaWeb.com (A-Safer-Web으로 발음). .NET dev는 'Microsoft MVP Troy Hunt가 작성한이 사이트는 ASP.NET 웹 사이트에서 다양한 일반적인 보안 문제를 검색합니다.'라고 말합니다. 맥 디킨슨 . '테스트에 실패하면 문제 해결 방법을 알려줄 것입니다.'

10. 자동화

“단위 테스트를 배포하거나 수동으로 실행하는 데 시간을 낭비하지 마십시오. 이를 자동화하십시오.”라고 Macs는 말합니다. 'NAnt 또는 MSBuild를 사용하는 데 소요되는 시간은 마감일이 다가올 때 건너 뛰어야하는 후프의 수를 줄여 주므로 시간이 많이 소요됩니다.'

11. 팀 추적기

Unboxed 컨설팅 사용하다 중추 추적기중추 부스터 프로젝트 관리 및 기능 / 버그 추적을 위해. '이를위한 다른 도구가 있지만 Pivotal Tracker는 간단하고 가벼운 옵션입니다.'라고 팀이 말했습니다. '우리는 정기적으로이를 사용하여 프로젝트 진행 상황을 추적합니다.'

12. 완벽한 사진

완벽한 픽셀 개발 프로세스에서 나오는 실제 프런트 엔드와 초기 디자인을 비교하기위한 Unboxed 도구입니다. Unboxed 팀은 '이 작은 Firefox 플러그인을 사용하면 페이지 상단에 디자인의 jpeg 버전을 오버레이 할 수 있습니다.'라고 말합니다. '모든 것이 정렬 된 마지막 픽셀까지 확인할 수 있습니다!'

13. 점선

Unboxed는 코딩 페이지의 진행 상황을 추적하기위한 스마트하고 직관적 인 아이디어를 가지고 있습니다. '가끔 프런트 엔드에서 작업하는 경우 작동하지 않거나 완료되지 않은 요소에 점선 윤곽선을 제공하는 '불완전'또는 '할 일'CSS 클래스를 사용합니다.'라고 팀은 말합니다. '실시간으로 전환하기 전에 무엇이 필요한지 명확하게 확인할 수 있습니다.'

삼성 갤럭시 s4를위한 최고의 휴대용 충전기

변하기 쉬운

14. 활성 전화 번호

Mike Ballan은“대부분의 모바일 장치에는 전화를 걸 수있는 기능이 있으므로 페이지 코드에서이를 활용하십시오. 번호를 꼬리표. 프로토콜로 http : // 대신 'tel :'을 사용합니다.

다음과 같이 표시 될 수 있습니다.

0123456789

15. 높거나 낮습니까?

사이트에서 망막 화면을 사용할 준비가 되었습니까? 숫자가 지금 당신 편이라고해서 괜찮다고 생각하지 마세요. 영원히 그런 식으로 유지되지 않을 것이기 때문입니다.

'화면 해상도에 대한 반응에 따라 이미지를 전환하는 몇 가지 솔루션이 있습니다.'라고 Mike는 말합니다. “JavaScript 프레임 워크가 있습니다. retina.js 표준 이미지를 고해상도 버전으로 교체하기 위해 Apple의 @ 2x 명명 규칙을 사용합니다.

'webkit-image-set를 사용하여 iOS 기기에 고해상도 이미지를 제공 할 수도 있습니다.' 방법은 다음과 같습니다.

.header { background: -webkit-image-set( url(images/header.jpg) 1x, url(images/header_2x.jpg) 2x);}

16. 고정 위치

사이트 하단에 고정 탐색 또는 연락처 표시 줄을 원하십니까? 모바일의 경우 몇 개의 브라우저 만 '고정'클래스를 지원한다는 점을 명심해야합니다. 'Windows Phone 7은‘고정’클래스를‘정적’으로 대체 할 것입니다. 이는 좋지 않습니다.”라고 Mike는 말합니다.

다음은 CSS의 'fixed'속성을 지원하는 그의 모바일 운영체제 목록입니다.

  • 모바일 Safari iOS5 이상
  • Android 3 이상
  • Blackberry 7.0 이상

바로 가기

17. 스프라이트

버튼, 아이콘 및 배경을 스프라이트로 전환하여 페이지 다운로드 속도를 높입니다. 여러 이미지를 하나의 파일로 결합하면 클라이언트가 서버에 작성해야하는 요청 수가 줄어 듭니다. Rhys Little은 '일부 개발자는 유형별로 이미지를 그룹화합니다. 다른 개발자는 모든 것을 하나의 파일로 결합합니다'라고 말합니다.

그런 다음 CSS background-position 속성을 사용하여 원하는 이미지 부분 만 표시합니다. 이미지는 한 번 다운로드되고 한 번 캐시되고 한 번 요청됩니다. 너무 힘든 일처럼 들리면 온라인 도구를 사용하십시오. SpriteMe 당나귀 일을하기 위해. 페이지에서 결합 할 수있는 이미지를 스캔하고 CSS를 생성합니다.

18. 공백

'여백과 JavaScript 및 CSS의 함수 이름을 줄이면 페이지로드 시간이 크게 줄어 듭니다.'라고 Rhys는 말합니다. 그는 모든 JavaScript와 CSS를 하나 또는 두 개의 파일로 결합한 다음 해당 파일을 YUI 압축기 .

19. 액션

디자이너조차도 Photoshop Actions가 자신의 삶을 얼마나 쉽게 만들 수 있는지 잊습니다. 개발자는 이것을 잊지 않을 것입니다. Photoshop 웹 워크 플로우 .

Paul Wilson은 '설치 후 Photoshop에서 아무 레이어 나 클릭하고 F1 키를 누르면 정확한 크기의 새 문서에 레이어를 넣고 웹용으로 저장 창을 표시합니다.'라고 말합니다.

간단한 사운드 시퀀스이지만 배경 생성, 프로토 타이핑 및 스프라이트 제작 속도를 훨씬 더 빠르게하는 시퀀스

20. 그렇다면

Keir Whitaker뷰포트 산업 Mac 응용 프로그램 TextExpander 없이는 살 수 없습니다.“큰 텍스트 덩어리에 바로 가기를 할당 할 수 있습니다. 예를 들어 코드 편집기에서 WordPress 루프를 출력하려면 // loop를 입력하면됩니다. 시스템 전체에서 작동하며 중첩 된 목록과 같이 시간이 많이 걸리는 코드 구조를 구축하는 데 유용한 도구입니다.

21. 새로 고침

Keir는 또한 CodeKit 'Mac을 사용하는 경우 CodeKit은 필수입니다.'라고 그는 말합니다. '브라우저 다시로드 기능은 적은 비용만으로도 가치가 있습니다. 이미지 최적화, Sass 및 JavaScript 컴파일에도 좋습니다.

22. 모든 메일이 있습니다.

UX 개발자는 '앱의 메일 링 기능을 유지하는 정규직이므로 골치 아픈 일을 줄이고 아웃소싱합니다.'라고 말합니다. 윌 그랜트 . SendGrid 또는 Mandrill과 같은 서비스는 전 달성, 스팸 보호, 반송 보고서 등을 처리합니다. '이러한 것들은 처음 몇 천 개의 메일에 대해 매우 저렴하거나 무료입니다.'

반응 형 사이트

23. 미디어 쿼리

Mike Ballan은 '반응 형 사이트를 구축 할 때 미디어 쿼리는 프로세스의 중추입니다. 이러한 쿼리는 장치의 미디어 유형과 일치하고 선언 한 CSS를 표시합니다.'라고 말합니다. 예를 들면 :

body { text-color:#000000; }@media only screen and (min-width:1200px) {body { text-color:#FF0000; }}

위의 코드는 1200px 이상의 화면 해상도를 트랩하고 페이지의 모든 본문 텍스트에 빨간색을 적용합니다. 화면 크기가 1200px 미만이면 검은 색 본문 텍스트가 표시됩니다.

지금까지는 간단하지만 노련한 개발자들은 항상 모든 사람을 기쁘게하기 위해 고군분투하면서이 과정이 곧 번거로워 질 수 있음을 알고 있습니다.

“다음과 같은 CSS 프레임 워크를 사용하십시오. 몹시 놀라게 하다 ”Mike는 말합니다. 10 억 개의 서로 다른 미디어 쿼리를 작성해야하는 필요성을 단순한 의미 론적 클래스로 대체합니다.

24. 더 무거운 선택

더 무거운 프레임 워크가 필요한 경우 Twitter의 부트 스트랩 또는 ZURB의 재단 트릭을 할 수 있습니다.

25. 물건 끄기

Mike Ballan은 '반응 형 사이트를 만들 때 모든 콘텐츠가 표시되어야하므로 사용자가 두 번 탭하고 확대 / 축소하는 것을 원하지 않습니다. 이렇게하려면 사용자 확대 / 축소를 비활성화하는 코드를 추가해야합니다. 및 확장”.

이 코드는 또한 iOS 기기가 iPad 또는 iPhone을 회전 할 때 사이트를보다 우아하게 표시 할 수 있도록합니다.

우리 전문가들은 :

Keir Whitaker, Bath 기반의 공동 창립자 뷰포트 산업 , Carsonified 및 Smashing Magazine과 함께 작업했습니다.

리스 리틀 from 플러그 앤 플레이 사우 샘프 턴 몇 가지 최고의 CSS 팁을 제공했습니다.

셰인 미엘 케 LucasArts, Nintendo 및 Sony Pictures Studio를 비롯한 클라이언트의 디자이너이자 크리에이티브 디렉터입니다.

Paul Wilson은 새로운 컨텍스트 Ruby on Rails의 애자일 프로젝트 개발을 전문으로하는 스코틀랜드.

Mike Ballan은 해파리 그는 Photoshop만큼 XHTML과 CSS를 잘 알고 있습니다.

Macs Dickinson은 요크셔에 거주하는 웨일스 .NET 개발자입니다. 트위터의 @MacDickinson입니다.

Ben Howdle은 방금 Didlr 개발을 마친 팀의 일원입니다. wapple.net . 웹 및 휴대 기기 용 그리기 앱입니다.

Unboxed 컨설팅 프로젝트 관리 및 Ruby on Rails 개발자의 마스터입니다.

윌 그랜트 사용자 경험 (UX) 및 기술 컨설턴트 Bitcala .