Tôi đã Refactor code như thế nào? (P3)

Chào các bạn, đến hẹn lại lên, hôm nay mình sẽ viết nốt bài cuối trong loạt bài viết : “Tôi đã Refactor code như thế nào”.

  • ADIDAS Yeezy Boost 350 V2
  • Bambini Nike Kd 7 nike kd 9 pas cher Maglie Oklahoma City Thunder Nike Air Huarache damskie Air Jordan 9 Nike Air Max 95 damskie

  • Air Jordan 9 Homme
  • Dayton Flyers Jerseys Nike Free 3.0 Javier Baez Authentic Jersey nike air max pas cher

  • Nike Air Max 2014 Femme
  • Miami Hurricanes Jerseys bns gold

  • ADIDAS TEAM COURT
  • adidas zx flux damskie niebieskie

  • ZOOM ALL OUT
  • Nike Air Huarache Donna
  • Nike Scarpe Bambini chaussures air max pas cher Nike Free Run +3 asics outlet Air Yeezy For Sale Chaussures Under Armour New Balance Hombre Fjallraven Kanken Big UK Ở những bài viết trước về ý tưởng tôi đã giải quyết xong các vấn đề:

    • Show message.
    • Show progressBar.
    • Hide progressBar.
    • Validate email và password sẽ được tái sử dụng rất nhiều.
    • Tại onCreate không nên viết code trực tiếp, như vậy sẽ rất rối và khó theo dõi.
    • Không nên viết class UserLoginTask ở trong 1 class.

    Bài viết này tôi đặt vấn đề, có thể có thêm cách nào đó làm cho code của chúng ta gọn gàng hơn được nữa không? Việc lập trình sẽ thật nhàm chán khi bạn cứ mãi lặp đi lặp lại một đoạn code mà chỉ để thực hiện 1 tác vụ.

  • ADIDAS Yeezy 350 Boost
  • Bradley Fletcher nike air max flyknit Femme Canotte Brooklyn Nets Nike Air Jordan 14 Womens
    Adidas Original Zx Flux Homme air max 90 femme noir et rose et blanc adidas shoes uk New Balance 993 hombre Womens Air More Uptempo Brandon Bolden adidas neo donna Terrell Suggs Ravens Jerseys

  • Nike Roshe Run Dames
  • Air Max 2017 Uomo
  • nike air max command cuir Soldes Nike Pas Cher asics gel nimbus 17 hombre Taylor Lewan – Michigan Wolverines nike air max 2016 online

  • Nike Air Max 2017 Donna
  • Nike Max Shoes UK Ví dụ như đoạn code sau:

    Chắc chắn, những bạn code android được một thời gian đã quá quen thuộc với đoạn code trên, nhiệm vụ chính của nó là tìm View trong Layout bằng Id. Air Jordan 11 Retro
    Canotte Portland Blazers Nike Air Max Thea męskie Donne Scarpe Air Jordan 4

  • NIKE AIR MAX 2017
  • NIKE AIR ZOOM PEGASUS 33 Nike Air Max 2017 Heren blauw Zach Mettenberger – LSU Tigers New Balance 009 hombre Geno Smith – West Virginia Mountaineers Air Jordan XX9 Retro
    Adidas Nmd Pk Runner Asics Gel Lyte 3 Baratas

  • Adidas Powerlift 2.0 Donna
  • sac a dos fjallraven soldes Chaussure Adidas Pas Cher

  • ULTRA BOOST 2017
  • Adidas Nmd Donna Nere
  • Solde adidas gazelle new balance 996 bleu ciel Maglie Phoenix Suns

  • Nike Air Max 2017 Dames roze
  • New Balance Hombre Soldes Under Armour Ở ví dụ trên, layout của chúng ta chỉ có 4 view.

  • NIKE AIR MORE UPTEMPO
  • Arkansas Razorbacks Jerseys ULTRA BOOST 2017 Julio Jones Nike Air Max 2017 Dames zwart nike air jordan 10 chicago Maglia Hakeem Olajuwon adidas nmd rouge Fjällräven Kånken Barn Todd Gurley UGA Jersey Nike Air Foamposite Womens A.J. Green Jerseys Nike Air Foamposite Air Jordan 3 Chicago Bulls New Balance Dames Maglie San Antonio Spurs Under Armour UA Curry 2 Adidas sklep air max pas cher homme New Balance 373 hombre Asics Gel Nimbus 17 męskie Aaron Rodgers Cal Jerseys

  • Air Max 90 Bianco Donna
  • nike air max 90 pas cher adidas nmd beige new balance 999 femme foot locker Adidas Baratas nike tn 2017 homme Air Max 2016 Sale

  • Canotte LeBron James
  • Các bạn thử tưởng tượng với 1 layout mà có từ 10 view trở lên thì sao? Việc viết hàm

    đã rất mất thời gian rồi, đồng thời code nhìn rất lộn xộn và việc phải viết đi viết lại hàm trên cũng rất nhàm chán. Connecticut Huskies

  • Nike Air Max 2017 Dames blauw
  • Nike Free 5.0 Men
  • Kyrie 2 Shoes

  • Nike Air Max 2017 Donna
  • Air Jordan 11 (XI) baskets noires Asics Lyte Jogger LA Dodgers Jersey scarpe adidas compra online Nike Roshe Run Porté Femme Air Jordan 5

  • nike air huarache dames roze
  • nike air max 2016 goedkoop new balance 1500 bordeaux femme adidas neo uomo nike free 4.0 flyknit allegro air max pas cher homme baskets Asics Pre Galaxy nike tn pas cher Goedkoop Air Max Nike nike blazer low damskie Robert Griffin III Baylor Jerseys nike air max Flyknitmęskie chaussures nike air max pas cher

  • Nike Air Max 90 Uomo
  • asics gel kinsei 5 uomo Nike Air Max 2016 Heren grijs

  • Roshe Run Donna Grigie
  • Vậy chúng ta có thể giải quyết được công việc nhàm chán kia mà vẫn không thay đổi nhiệm vụ của nó không? Câu trả lời là . nike air max 1 ultra moire uomo Taylor Martinez – Nebraska Cornhuskers new balance uomo trovaprezzi Nike Air More Uptempo Nike Air Max Tavas Angel Pagan Jersey asics femme C.J. Wilson Baseball Jersey Asics Gel Lyte 3 Femme Rose nike tn chaussure Eli Manning Jersey

  • New Balance 999 Uomo
  • Air Jordan 8 (VIII) Air Max Baratas Asics Gel Lyte 5 Femme Kaki buty damskie squash asics new balance bordowe damskie allegro Nike Zoom All Court CK

  • Mens Nike Air Max Lunar 90
  • AIR ZOOM VOMERO 12
  • baskets noires Asics Lyte Jogger adidas superstar 80s grise Nike Air Max 2016 Goedkoop Solde adidas zx flux Nike Air Max 2016 Heren zwart Geno Smith College Jerseys Canotte Memphis Grizzlies Los Angeles Lakers Fjallraven Kanken Sale Kids Ở bài này, tôi sẽ giới thiệu cho các bạn một thư viện mà có thể giúp chúng ta xoá bỏ được việc viết lặp lại code, tránh được sự rườm rà trong việc lập trình ứng dụng android. Maglia Jeff Teague Nike Free Run +3 Nike Air Max adidas italia Nike Air Max 2017 Dames Nike Air Max 2016 Norge Nettbutikk Canotte Houston Rockets Nike Marxman Nike Benassi

  • ADIDAS VALCLEAN2 CMF
  • Nike Air Max 2017 Dames zwart
  • Nike Free 5.0 Men
  • Authentic UGA Jersey Texas A&M Aggies Jerseys zonnebrillen ray ban goedkoop

  • Asics Gel Lyte 5 Donna Rosso
  • Buty Asics Damskie asics tiger lyte jogger

  • ADIDAS ULTRA BOOST 2017
  • Nike Air Max Baratas Air Jordan 13 (XIII) Asics Gel Lyte 3 Baratas nike air max pas cher Jordan 12 Sale adidas messi astro Goedkoop Nike Schoenen 2017 goedkoop nike air max 2016 Nike Air Max 2016 damskie adidas zx 750 damskie

  • Air Jordan 6 Homme
  • Thư viện mà tôi muốn giới thiệu ở đây đó là Butter Knife. Nike Air Max 2017 Dames wit NIKE ROSHE RUN Montana Murphy Jersey Compra Zapatillas New Balance Air Jordan 4 Cement asics gel nimbus mujer asics gel nimbus 17 mujer asics gel lyte 3 hombre Grey Pink Jordan Shoes

  • NIKE Air VAPORMAX
  • Curry Due Gs nike air max thea blanc strass Goedkoop Nike Air Max 2017

  • Nike Air Max 2017 Heren zwart
  • asics gel beyond damskie

  • NIKE AIR HUARACHE
  • nike air max 2017 heren wit

  • ULTRA BOOST 2017
  • Nike Air Huarache Dames
  • nike air max 2017 pas cher homme

  • Nike Air Max 1 Femme
  • Nike Free Run +3 Nike Air Max 90 Heren nike scarpe 2017 New Balance 009 hombre New Balance 993 mujer New Balance 577 hombre Butter Knife được phát triển bởi Jake Wharton lập trình viên chủ đạo của Square. Nike Air Max 90 2015 Femme Asics Gel Lyte 5 Homme Air Max 2017 Dames Terrell Suggs Ravens Jerseys Canotte Golden State Warriors Nevada Wolf Pack Jerseys Air Jordan 10 (X) Air Jordan 3 Uomo Fjällräven Kånken Zapatillas ZX 700 ffxiv gil Nike Nettbutikk LUNARGLIDE 8

  • Golden State Warriors
  • Maglie Denver Nuggets Cheap Nike Shoes UK Maglie New Orleans Pelicans

  • ADIDAS EQUIPMENT 10 M
  • nike homme kaki Jordan 4 Sale Để sử dụng thư viện này các bạn vào build.gradle thêm vào, sau khi thêm vào thì click “Sync Now”

    Import library ButterKnife

    Vậy ở đây Butter Knife dùng để làm gì? Butter Knife sử dụng annotation @BindView và một viewId để tìm và tự động cast các view tương ứng ở trong layout. scarpe nike air bambini Todd Gurley II Georgia Jersey

  • Nike Air Max 2017 Dames zwart
  • Nike Air Jordan 4.5 Womens
    Canotte Houston Rockets

  • NIKE AIR MAX LD-ZERO
  • Air Jordan 14 (XIV) Nike Air Max 2016 Heren Rood asics gel quantum 360 damskie

  • ULTRA BOOST
  • Adidas Superstar Rosso Donna
  • nike air max 1 og colorways Albert Pujols Baseball Jersey Nike Air Max 2017 Dames new balance 373 damskie bordowe TENNIS CLASSIC ULTRA FLYKNIT Nike Air Max 90 adidas yeezy boost 550 męskie new balance femme 996 bleu et or air max pas cher Nike Air Max 90 Donna Terrell Davis Jerseys adidas ultra boost hombre Andrelton Simmons Baseball Jersey nike air max 90 pas cher New Balance 1500 mujer Miami Heat Cleveland Cavaliers Asics Pas Cher

  • Nike Air Max 2017 Heren wit
  • nike air max 2017 femme grise nike air max 1 donna Như đoạn code ở phía trên tôi có thể viết lại như sau:

    Use ButterKnife

    Như các bạn thấy ở trên, đã không còn những câu lệnh nhàm chán findViewById(), code bây giờ đã ngắn và dễ nhìn hơn rất nhiều. Maglie Los Angeles Lakers Marcus Mariota Oregon Jerseys tuta new balance maratona di roma

  • Nike Air Max 2015 Uomo
  • Canotte Chicago Bulls Adrian Peterson new balance 574 femme bleu marine Nike Air Force 180 Mid Texas Longhorns

  • Air VAPORMAX
  • nike air max 90 homme pas cher chaussure new balance femme 2016 Fjallraven Kanken Big Yeezy Boost 350 Donna nike air max 1 qs Kanken Classic Fjallraven Kanken Pas Cher Donne Scarpe Air Jordan 6

  • NIKE AIR MAX ZERO QS
  • Air Max TN Womens Nike Roshe One

  • Nike Air Max 2017 Dames wit
  • Adidas buty damskie Robert Griffin III – Baylor Bears Nike Air Max Dames Goedkoop solde adidas chaussures

  • Asics Gel Lyte 5 Donna Rosso
  • sac a dos fjallraven soldes Khi MainActivity được chạy và chúng ta gọi đến hàm ButterKnife.bind(this) thì đoạn code trên sẽ được chạy và view sẽ được tìm, cast và gán vào trường tương ứng. adidas ultra boost uncaged uomo nike roshe uomo amazon Air Jordan 8 Nike Pas Cher adidas Stan Smith Italia

  • air max 2017 rosa donna
  • Goedkoop Nike Air Max Cheap Nike shoes UK Maglia Chris Paul vendita on line new balance 1500

  • Minnesota Timberwolves
  • adidas zx 750 mujer asics buty męskie Nike Store Adidas NMD Heren Sac à Dos Fjallraven Kanken Under Armour Curry 6

  • NIKE LUNARGLIDE 8
  • College Apparel nike air max 1 pas cher John Elway Jerseys Jason Heyward Jersey fjallraven kanken outlet new balance uomo trovaprezzi Maglia Paul George Compra Zapatillas New Balance new balance 373 uomo prezzo Lưu ý nhỏ là bạn phải gọi ButterKnife.bind(this) sau hàm setContentView(R.layout.activity_main) thì Butter Knife mới hoạt động! Và 1 điều nữa là các trường dùng để gán view không được có modifier là private, do Butter Knife sẽ gọi đến các trường ấy ở 1 class khác chứ không phải trong class MainActivity. NCAA Jordan Hydro Retro Nike air max pas cher Adidas ZX 750 Heren

  • nike air huarache dames roze
  • Air Jordan 3 Donna

  • Nike Air Max Command Femmes
  • Nike Free Run +2 AIR MAX 2017 Womens New Balance Sneakers
    New Balance 1600 hombre Nike Air Max 2017 Dames roze Soldes Fjallraven Kanken adidas nmd hombre nike air max pas cher adidas hamburg homme adidas ultra boost damskie nike internationalist damskie

  • Air Max 90 Nero Donna
  • Adidas Superstar Heren Milwaukee Bucks Canotta Charlotte Hornets Adidas NMD Dames beige Fjallraven Kanken No.2

  • NIKE AIR MAX ZERO QS
  • nike air max pas cher nike tn homme Một chú ý nữa là khi sử dụng Butter Knife với Fragment, trong onCreate các bạn goi đến hàm

    Sau khi tôi đã sử dụng Butter Knife các bạn để ý với Button, Butter Knife có hỗ trợ luôn @OnClick

    Tôi cung cấp lại toàn bộ code:

    Vậy là tôi đã giới thiệu xong với các bạn cách sử dụng thư viện Butter Knife để áp dụng vào dự án, tránh việc phải viết lặp đi lặp lại một đoạn code.