Bir dahaki sefere kodunuzda nereye devam etmek istediğinizi nasıl hatırlarsınız? [kapalı]


18

Bir kod üzerinde çalışmayı durdurduğunuzda (başka bir şey üzerinde çalışmanız veya tatile gitmeniz ya da sadece günün sonu olması nedeniyle), Visual Studio projesini kapattığınızda, hatırlamanın tercih edilen yolu nedir? kod üzerinde tekrar çalışmaya başladığınızda bir sonraki adımda yapmak istedikleriniz.

Bir Visual Studio yer işareti ayarladınız mı veya benzer bir şey yazdınız // TODO: continue here next timemı? Belki de sizin gibi özel bir etiketiniz var // NEXT:mı? Monitörünüze yapışkan bir not ekliyor musunuz? Bilmem gereken harika bir araç veya Visual Studio eklentisi kullanıyor musunuz?

Kodunuzda, kodunuzda en son çalıştığınız yerde kaldığınız yeri bulmanıza yardımcı olacak herhangi bir kişisel hile var mı?


3
Bazı IDE'ler, son dosyaların açıldığını ve bu dosyalardaki kaydırma konumunu hatırlayacak şekilde ayarlanabilir.
SinirliWithFormsDesigner

8
// BURAYA GİT. (Ayrıca,
IDE'lerini

2
Vim, bunu yapmak için yön verildiğinde her dosyada nerede olduğunuzu hatırlayacak~/.vimrc
alternatif

Eclipse, kapattığımda açtığım tüm dosyaları aynı konumda açar. Bu yardımcı git status olmazsa git diff` ve git logarkadaşlarınız.
Ingo

Yer Kaydet'i etkinleştirirseniz Emacs bunu yapar: emacswiki.org/emacs/SavePlace
Luke Girvin

Yanıtlar:


17

Hangi birim testlerin işe yaramadığını düzeltirim. Eğer hepsi geçiyorsa, yeni bir tane yazarım.


1
Mantıksal sonucu belirtmeye değer: gün için işiniz bittiğinde kasıtlı olarak başarısız bir test bırakmak, ertesi gün çalışmak istediğiniz şeyi kendinize hatırlatmanın iyi bir yoludur ...
Jules

9

Her günün başında, Todays Goals.txt adlı bir metin dosyam var ve her gün böyle bir tarih ekliyorum.

Cuma 02/25/2011 Gol

Sonra üzerinde çalıştığım her projeyi ve bugün ne yapmam gerektiğini ya da tamamlamam gerektiğini yazıyorum.

Sonra günün sonunda, yarın yapılacak işleri yazıyorum.

Bu günlük süreç, ne yapmam gerektiğini tam olarak hatırlamama ve her günün iyi planlandığından emin olmama yardımcı oluyor.


2
Ben de aynısını yapıyorum, ama not defterime kalemle yazıyorum
Zachary K

Ben de bir not defteri ile yapıyorum ve her hafta eski sayfadan kurtulup yeni bir sayfa açıyorum.
yapılandırıcı

1
Tüm hedeflerimi her gün için saklıyorum, yaptığım tüm çalışmaları bana tarihsel bir şekilde gösteriyor ve şirkete neler kattığımı gözden geçireyim.
crosenblum

"Günün Notu" ekleyen tomboy bunun için çok iyi, "Bugünün todos" gibi bir başlık ile bir şablon ayarlayabilirsiniz. Daha sonra her gün bir önceki günün notlarına bakarak başlayabilirsiniz. live.gnome.org/Tomboy/PluginList
Tim Abell

8

Temelde ne üzerinde çalıştığımı asla unutmam. Visual Studio, üzerinde çalıştığınız son dosyada açılır ya da Visual Studio'yu hiçbir zaman kapatmaz ve hazırda bekletirim.

Ben yer NotImplementedExceptions soyutlama / ille ben ne üzerinde çalıştığını geliştirmeye devam etmek önemli değildir uygulamalarda en.

Koduma bir sürü TODO yerleştiriyorum , ama belirttiğiniz gibi değil. Onları belirli bir yaklaşımın daha iyi / daha iyi olacağını bildiğim bir yere yerleştiriyorum, ancak şu anda gerekli değil. Bu, kendim ve gelecekteki geliştiriciler için iyileştirme için yer olduğu konusunda güzel bir gösterge veriyor.

Visual Studio'nun Görev Listesi'ni kullanarak, bu göstergeleri bıraktığınız tüm yerleri kolayca görüntüleyebilir ve hatta özel göstergeler bile ekleyebilirsiniz.

GÜNCELLEME:

" HACK :" işe yarayan bir şey yazdığınızda da güzel, ama hiç memnun değilsiniz.


Ama ya proje üzerinde çalışmayı bıraktıysanız (daha uzun bir süre için) çünkü başka bir proje üzerinde çalışmak zorundaydınız.
bitbonk

1
@bitbonk: Belirli bir işlevi yerine getirmenin tam ortasında bir proje üzerinde çalışmayı bırakmazdım. Muhtemelen bir sınıf bile değil, bu yüzden "burada" diye bir şey yok.
Steven Jeuris

İyi şanslar! :)
bitbonk

5

Her günün sonunda, çalışma kitabımda o gün neyi başardığımı, ertesi gün neyi başarmayı beklediğimi ve yapılması gerekenleri yazıyorum.

Her günün başında, kendimi yapmam gerekenlerle yenilemek için bir önceki notlarıma başvuruyorum. Sonra, başka ne yapmam gerektiğini ve önceliklerimin ne olduğunu anladığımdan beri ne olduğuna bağlı olarak daha fazla not almak için birkaç dakika daha harcadım.

Bunun gevşememe ve günün sonunda gitmesine ve başlangıçta hızlanmasına yardımcı olduğunu düşünüyorum. Ayrıca, yıllık veya üç aylık incelemelerin zamanı geldiğinde, inceleme dönemi boyunca ne yaptığımı belirlemek için çalışma kitabımdan bahsetmem gerekiyor.



1

"Programlamanın Beyni" nde yapılan röportajlardan birinde (sanırım Python'un yaratıcısı Guido van Rossum'du), görüşmeci //HIERson kez bitirdiği yere benzer bir yorum eklediğini söyledi . "HIER" burada Hollandaca (?) Ve onu seçiyor çünkü o dizeyi ararsanız, başka olaylar bulmak pek mümkün değildir.


"HIER" (Almanca)
bitbonk

"HIER" de Hollandaca, "HEIR" değil
Steven Jeuris

3
//HIERARCHY DOCUMENTATION... ayy!
Mason Wheeler

@Mason: "Yalnızca tam kelime" araması bu sorunu önler.
dan04

1

Şimdiye kadar, en sevdiğim yol TDD aracılığıyla. Test takımınız başarısız olduğunda nerede olduğunuz oldukça açıktır.

Ancak, tüm projeler TDD'ye izin vermiyor, bu yüzden kodu bıraktığım yerde yorumlanmamış bir yorumla kırma eğilimindeyim.

// Some Comment

Becomes Some Comment // Which Produces Some Fatal Error

Bu ölümcül hata, onu serbest bırakmadan önce bu koda dokunulmamasını sağlar.

Son olarak, son işlemimden bu yana nelerin değiştiğini görmek için vcs'imi her zaman kontrol edebilirim ve bu bana bir sonraki adımda nereye gitmem gerektiği konusunda iyi bir fikir verecektir ...


1

Çok dik bir öğrenme eğrisine sahip iki çok gelişmiş modern teknik kullanıyorum:

  • Bilgisayarınızı kapatmayın . Sadece eve git ve ertesi sabah ekranda dün bilgisayar korsanlığını bıraktığın yeri göreceksin. Ancak tatil için ayrılırsanız kontrol noktanızı kaybetme riskleri çok daha yüksektir.
  • Derleme hatası bırakın ve başka bir şubeye göz atın. Diyelim ki C ++ kodunuz şöyle görünecektir:

    for (i=0; i<N; i++){
      int j = i + oh, no, my boss wants me to fix text on the front page!
      why? why should I do it?  Jimmy could have done it faster, but
      of course, my office is closer to the boss', and he doesn't want to
      take longer walks, that lazy fat bastard...
    

    Bu şekilde, bilgisayarınızı açtığınızda veya etkin geliştirme yaptığınız şubeye geri döndüğünüzde proje oluşturulmaz. Derleyiciniz, sıralarınızla karşılaştığı tam satırı ve dosyayı gösterecektir .

Bu teknikler, geliştirdiğim yeri tanımamın yanı sıra dünya çapında birçok programcının kapsamlı çalışmaları ve deneyimleriyle desteklenmeme yardımcı oldu. Onları denemenizi öneririm.


1

Bu, artık Visual Studio 2012'de çalışma alanınızı askıya alabileceğiniz ve devam ettirebileceğiniz entegre bir özelliktir. Suspend, açık dosyalarınızın, kesme noktalarınızın, izleme listelerinizin, iş öğelerinizin vb. Bir görüntüsünü alır ve devam ettirmek dosyayı geri getirir. Temel olarak tüm çalışma içeriğiniz kaydedilir ve tam olarak bıraktığınız gibi devam edecektir.
http://msdn.microsoft.com/en-us/library/ms181403.aspx

Özelliği gösteren kısa bir video
http://channel9.msdn.com/Series/Visual-Studio-2012-Premium-and-Ultimate-Overview/Visual-Studio-Ultimate-2012-How-to-multi-task- -My-Work ile



0

Visual Studio'da yerleşik olmayan dokümanlar alt projesinde her yineleme için bir geliştirme günlüğü tutuyorum; günlükteki son satır her zaman bir sonraki görevdir.

görsel stüdyosu da çok sık kapatmıyorum, sadece bilgisayarı bekleme moduna al


0

Hemen geri dönmek için neye ihtiyacım olduğunu bulmak için, genellikle bir yorum koydum:

//TODO: figure out why the widget doesn't unfrob properly

Boş çizgilerle çevreliyorum ve tekrar gördüğümde dikkatimi çekiyor. Sonunda geri dönmem gereken uzun vadeli sorunlar için, derleme sırasında ileti yayınlamanızı sağlayan bir Delphi derleyici yönergesi kullanıyorum:

{$MESSAGE WARN 'This method is not yet implemented'}

Diğer dillerin bunu yapıp yapamayacağından emin değilim ...


C'de #error aynı ihtiyacı karşılar. Java bunu kutudan çıkarmaz, ancak projenize derleme zamanı işlenmiş bir ek açıklama ekleyebilirsiniz: Kurulması biraz iş, ancak bir kez yaptıktan sonra kullanımı nispeten kolaydır. Eminim diğer diller için benzer yaklaşımlar vardır ...
Jules

0

Aylar öncesinden bir projeye geri dönmemizden bahsederken yapılacaklar listesi çalışmıyor. Koddaki yorumlar benim için iyi çalışmıyor, X projesini tamamen bitirip bitirmediğimi ve önce todos araması gerektiğini görmezden gelmek ya da hatırlamak çok kolay. Ve eğer her insanın kendi TODO ifadesine sahip olduğu daha büyük bir ekibiniz varsa ... ugh.

Günüm güncelleme / birleştirme / derleme ile başladığından, ara sıra denediğim bir şey bir dosyaya kasıtlı bir derleme hatası koymak (ancak teslim etmemek). Ne yazık ki, bir hafta önce çalıştığım bir şeyin demosunu görmek isteyen doğaçlama bir ofis bıraktıktan sonra bunu yapmayı bıraktım. "İşte, açmama izin ver ... bekle ... bu ne anlama geliyor ... tamam o zaman ..."

Bu yüzden bilerek başarısız bir test senaryosu yazmaya geçtim.


0

Ertesi gün için ekranda çalıştığım kodla emacs bırakıyorum.

Bazen kodda derhal not edeyim, bir sonraki adımda ne yapacağımı söylüyorum.

Bir şeyler hakkında kafam karışmakla yükümlü olduğum gerçekten karmaşık bir widget için, not defterine veya yorum olarak kendime notlar yazacağım.


0

Bir aramayı izlerken sadece bir dosyadaki yerimi tutmak istiyorsam, bazen kesme noktalarını kötüye kullanıyorum.

Nerede olduğumun hafta sonu boyunca takip etmek için, hata izleyici sorununun sayısı ile kendime bir not bırakıyorum.


0

Bir sürüm kontrol sistemi mi kullanıyorsunuz? Cevabınız evet ise, günün sonunda değişikliklerinizi yerine getirmeli ve ne yaptığınızı ve bundan sonra ne yapmanız gerektiğini açıklamalısınız. Ve değilse, neden sen değilsin?


2
-1 Asla sadece taahhüt etme taahhüdü! Yaptıklarınızla ilgili bir şey yapmadıysanız ne olur? DVCS kullanıyor olsanız bile, bu hala bir sıkıntı. Güne değil, mantıklı değişime dayalı olarak çalışın
alternatif

Saygılarımla katılmıyorum. Sık sık taahhüt etmelisin. Eğer yapmadıysanız, o zaman geçici bir dal oluşturmalı ve bunu taahhüt etmelisiniz, böylece bagajı kırmamanız gerekir. Daha sonra işiniz bittiğinde şubenizi yeniden birleştirirsiniz. Günün sonunda taahhüt vermek, bilgisayarınızın ölmesi durumunda çalışmanızın bir yedeğini de oluşturur.
Dima

Ancak ertesi gün olmayı planladığınız şey, taahhüt mesajlarının kötüye kullanılmasıdır. Bu mesajların aylar boyunca faydalı bir günlük oluşturması gerektiğini unutmayın.
Ben Voigt

@Ben Voigt: Dediğim gibi, bir görevin ortasında çalışmanızı durdurmanız gerekiyorsa, ayrı bir dal yapın. O zaman taahhüt mesajınız ana dalda değil, sadece o dalda olacaktır. Ayrıca, ertesi gün yapmak istediğiniz, kodunuzun mevcut durumunun çok iyi bir açıklamasıdır. Hatta aylarca işe yarayabilir.
Dima

0

Visual Studio'yu kapatıp günün sonunda Windows'u hazırda bekletmiyorum.


0

Her gece yeniden başlatılan birkaç kişiden biriyim (Hala işte Win XP'de ve daha iyi performans gösterdiğini hissediyorum.), Bu yüzden ertesi sabah için bir hatırlatma seti ile bir görünüm görevi oluşturuyorum. Dosya adını, kod satırının bir kopyasını veya ne yaptığımı bana bildirmek için yeterli notu koyabilirim.


0

Birkaç şey yardımcı olur:

  • Ben "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" metni (bu derlenmiş veya yorumlanmış kod olsun) çalışamaz faydaları vardır , bu yüzden özleyemem. Ayrıca, bu etiket benim için sinestezi sayesinde parlak kırmızı , bu yüzden büyük bir kod parçasında bile tespit etmek gerçekten kolay.

  • IDE her açıktı yerde dosyaları yeniden açar çabuk ne yaptığımı hatırlamıyorum böylece, (ve çizgiler çizildi / kesmenoktaları).

  • Yapılacaklar listemde hangi problemi çözmeye çalıştığımı / uygulamaya çalıştığımı görebiliyorum.


+1: Bunu kesinlikle sevdim: "Ayrıca, bu etiket sinestezi sayesinde benim için parlak kırmızı ..."
Peter Rowell

0

Hem hata ayıklama hem de sürümde derlemek için kodlamanız gerektiğini söylemediğiniz için, sık sık yaptığım bir numara:

#if DEBUG
#error "YOU LEFT OFF HERE"
#endif

Bunu unutmak çok zor. Aksi takdirde, kodda #pragma uyarısı koyarım, böylece derlediğinizde görünür.


0

Birkaç numara kullanıyorum:

  • Geçerli yinelemede yapılması gereken ancak hemen değil şeyler için @@ kod yorumlarına veya bir belgeye yerleştirin. @@ içeriyorsa makinemden hiçbir kod veya belge çıkmaz.

  • Yarın sabah çalışmaya devam etmem gereken özel bir yer @@ HERE ile işaretliyorum. Bu nadiren zorunludur çünkü IDE'm daha önce kapattığım yerde açılacak ve Word'e bunu yapmasını bile söyleyebilirsiniz .

  • Daha sonra düzeltilmesi / eklenmesi gereken her şey uygun bir hata izleme sistemine girer veya tasarım belgelerinde bulunur.

Visual Studio'nuzun üzerinde çalıştığınız son konumu hatırlayamadığından emin misiniz? "Visual Studio 2012 ile Çalışmaların Askıya Alınması" 2012'de yapılabileceğini söylüyor ( Visual Studio için Google başlangıç ​​"kapalı" )

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.