คุณลักษณะเริ่มต้นใดที่ Windows ขาดหายไปซึ่งจำเป็นสำหรับโปรแกรมเมอร์ [ปิด]


13

คุณลักษณะใดที่ขาดหายไปของ Windows ที่สามารถปรับปรุงประสิทธิภาพการทำงานของโปรแกรมเมอร์ ฉันรู้ว่าผู้คนจำนวนมากต้องการคุณสมบัติบางอย่างจาก Linux และ OSX ที่พอร์ตหรือถูกสร้างขึ้นสำหรับ Windows เช่นกัน อะไรที่ขาดหายไปสำหรับคุณ

ตัวอย่างจะเป็นตัวเลือกให้มีหลายพื้นที่ทำงาน เมื่อไม่มีความเป็นไปได้ที่จะใช้จอภาพสองจอที่มีประโยชน์


พื้นที่ทำงานหลาย ๆ คุณหมายถึง ... ไดเรกทอรีย่อยหรือไม่
Shog9

10
@ Mr.CRT คุณเคยใช้ linux ไหม?
Ygrec

7
ฉันคิดว่า "พื้นที่ทำงาน" เขาหมายถึงเดสก์ท็อปเสมือนจริง
Jesse Buchanan

@Ygrec: ใช่ หากตามที่ jbinto คาดเดาคุณหมายถึงเดสก์ท็อปเสมือนจริงฉันไม่แน่ใจว่าอัตราดังกล่าวเป็นเครื่องมือโปรแกรมเมอร์ที่สำคัญเพียงใด ฉันพบว่ามันมีประโยชน์มากสำหรับงานต่าง ๆ เช่นการแก้ไขภาพ แต่สำหรับการเขียนโปรแกรมที่เปิดคอนโซลหลายเครื่องในครั้งเดียวก็เพียงพอแล้ว - และทั้งสองระบบปฏิบัติการสนับสนุนว่า
Shog9

ทั้ง gnome และ kde อ้างถึงคุณสมบัติของเดสก์ท็อปเสมือนว่าเป็นพื้นที่ทำงานซึ่งโดยทั่วไปแล้วจะมีสภาพแวดล้อมของ linux desktop, มะเขือเทศ / มะเขือเทศ
Quaternion

คำตอบ:


14

คอมไพเลอร์และเชลล์ที่มีประโยชน์


ชี้แจงตามความคิดเห็น:

ฉันไม่ชัดเจนฉันควรเขียนคอมไพเลอร์ C / C ++ คอมไพเลอร์สำหรับ C # หรือ Fortran ไม่นับเป็นจำนวนมากของเครื่องมือและไลบรารีที่คุณต้องการต้องใช้คอมไพเลอร์ C หรือ C ++ มันเคยเลวร้ายจริงๆซึ่งคุณไม่สามารถสร้างส่วนขยาย C สำหรับ Python กับคอมไพเลอร์อื่น ๆ ได้มากกว่า Microsoft เพราะนั่นคือสิ่งที่ Python รวบรวมไว้ฉันคิดว่า MinGW แก้ปัญหานี้แล้วและคุณสามารถทำได้กับ MinGW ในตอนนี้ แต่นั่นเป็นเหตุผลที่ดี เหตุใดคอมไพเลอร์ C / C ++ มาตรฐานควรถูกรวมหรือทำให้ว่างเมื่อ 20 ปีก่อน เมื่อไม่นานมานี้ Microsoft เพิ่งเริ่มเข้าใจถึงพลังของการมีโปรแกรมเมอร์มือสมัครเล่นมากมาย

ฉันไม่ได้ใช้ powershell บางทีมันอาจจะดี แต่ประโยชน์ของการทุบตีสำหรับฉันไม่ได้อยู่ในภาษาเปลือก ภาษาตระกูล * sh เป็นสัตว์ที่น่ากลัวอยู่ดี ฉันชอบไฟล์แบตช์ด้วยซ้ำ ;) เป็นสิ่งต่าง ๆ เช่นประวัติการเรียกคืนคำสั่งและการค้นหาซึ่งค่อนข้างพื้นฐานใน Windows และมีท่อและสิ่งที่ฉันกำลังพูดถึง (และฉันเห็น powershell มีท่อส่งดังนั้นมันจึงดี

มีสิ่งต่าง ๆ ที่ดีใน Windows เช่นกัน แต่นั่นเป็นหัวข้ออื่น ;)


2
นั่นเป็นเหตุผลว่าทำไมการแจกแจงลินุกซ์มักจะรวบรวมคอมไพเลอร์และล่ามหลายตัวพร้อมกับอีกมากมายที่พร้อมใช้งานจากตัวจัดการแพคเกจ
david4dev

1
@Victor Hurdugaci: คุณมีประเด็นอยู่ที่นั่น แต่สิ่งที่ขาดหายไปอย่างเห็นได้ชัดที่สุดก็คือคอมไพเลอร์สำหรับ C / C ++
Lennart Regebro

4
แน่นอนคำตอบนี้ล้าสมัย - คุณได้รับคอมไพเลอร์และเชลล์ที่เหมาะสม (powershell) ใน Windows 7
FinnNk

1
@ แมตต์: นั่นเป็นเพียงแค่ความดื้อรั้นในภาษาของคุณ มีคอมไพเลอร์ฟรีจำนวนมากที่พร้อมใช้งานสำหรับภาษาอื่นนอกเหนือจากภาษา Microsoft และฉันสงสัยว่าคุณจะกล่าวหาพวกเขาว่าผลักดันภาษาให้คุณ
Robert Harvey

4
เปลือกที่มีประโยชน์แน่นอน ไร้สาระอย่างแน่นอนว่าในปี 2010 คุณไม่สามารถขยายหน้าต่างพรอมต์คำสั่งให้ใหญ่ที่สุดได้ WTF ?!
Colin Goudie

10
  • ความสามารถในการเขียนและเรียกใช้โปรแกรมในภาษาต่าง ๆ (C, C ++, Python, Perl, Ruby ... ) โดยไม่ต้องติดตั้งอะไรเพิ่มเติม
  • มีตัวแก้ไขข้อความอย่างน้อยหนึ่งตัวพร้อมกับการเน้นไวยากรณ์ที่ติดตั้งโดยค่าเริ่มต้น
  • เครื่องมือจัดการแพ็คเกจเพื่อให้คุณสามารถติดตั้งไลบรารีเพิ่มเติมระบบควบคุมเวอร์ชัน IDEs และอื่น ๆ ได้อย่างง่ายดาย
  • อินเตอร์เฟสบรรทัดคำสั่งที่มีประสิทธิภาพ
  • ความสามารถในการปรับแต่ง GUI เพื่อประสิทธิภาพสูงสุด (แป้นพิมพ์ลัดมุมร้อนแรงเป็นต้น)
  • manpages
  • การมีซอร์สโค้ดของระบบปฏิบัติการและแพ็กเกจซอฟต์แวร์นั้นสามารถใช้งานได้ง่ายและได้รับอนุญาตให้ใช้สิทธิ์เพื่อให้คุณสามารถใช้ซ้ำได้
  • ประสิทธิภาพที่ดีในฮาร์ดแวร์ที่เรียบง่าย

2
"การมีซอร์สโค้ดของระบบปฏิบัติการและแพ็คเกจซอฟต์แวร์นั้นสามารถใช้งานได้ง่ายและได้รับอนุญาตให้ใช้เพื่อให้คุณสามารถใช้ซ้ำได้" อะไร?
Ygrec

2
apt-get source package-nameเมื่อใดก็ตามที่คุณต้องการทราบว่าชุดซอฟต์แวร์เฉพาะทำงานอย่างไร
david4dev

4
ฉันไม่เห็นด้วยกับประเด็นแรกของคุณ เหตุใดจึงขยายระบบปฏิบัติการด้วยตัวแก้ไขคอมไพเลอร์และสภาพแวดล้อมรันไทม์ที่แตกต่างกันโดยหวังว่าคุณจะพอใจทุกคน ดีกว่าที่จะให้โปรแกรมเมอร์แต่ละคนติดตั้งสิ่งที่เขาต้องการ
Victor Hurdugaci

3
@Victor Hurdugaci: นั่นจะเป็นจริงถ้า Windows ยังไม่ป่องๆโดยไม่มีอะไรชัดเจน การติดตั้ง linux ทั่วไปนั้นมีขนาดเล็กกว่าและมาพร้อมกับสิ่งเหล่านี้ทั้งหมด
Matt Joiner

2
(1) ฉันเพิ่งติดตั้ง Ubunto และต้องติดตั้งภาษาและเครื่องมือ dev แยกกันเช่นเดียวกับที่ฉันทำบน Window (2) Notepad เป็นตัวแก้ไขเริ่มต้นที่ไม่เพียงพอ TextPad อยู่ใกล้กับจุดที่น่าสนใจ (4) การรองรับคีย์บอร์ดโดยรวมของ Window ดีกว่าเดสก์ท็อป Linux ที่ฉันเคยใช้ ฉันสามารถใช้งานเดสก์ท็อปและแอพพลิเคชั่นส่วนใหญ่โดยไม่ต้องใช้เมาส์ได้เลยแม้แต่นิดเดียว
Mud

4

ฉันอาจปล่อย "จำเป็น" จากชื่อตามที่ฉันพัฒนาสำหรับ Windows อย่างมีความสุขเกือบ 20 ปี แน่นอนฉันได้พัฒนากล่องเครื่องมือและเครื่องมือที่ค่อนข้างดี ดูรายชื่อผู้เริ่มต้นของ Scott Hanselmann มันยอดเยี่ยมและมองย้อนกลับไปจนถึงปี 2003

BTW, Windows 7 รวมถึง PowerShellซึ่งช่วยในการแสดงความคิดเห็น "เชลล์ที่เหมาะสม"

ที่กล่าวว่าเป็นเรื่องดีเสมอที่จะมีเครื่องมือที่ดีกว่าสร้างขึ้นใช้เครื่องมือใด ๆ ในรายการของ Scott

Realisitically, MS สามารถปรับปรุง UI ของเครื่องมือในตัวเช่น regedit, task mgr (cf. Process Monitor) และเครื่องมือดูเหตุการณ์ที่สมบูรณ์แบบ มันจะเป็นการดีหากได้รับการสนับสนุนในตัวสำหรับหลาย ๆ คลิปบอร์ด จาก OSX ฉันต้องการแสดงและการสนับสนุนเดสก์ท็อปที่ดี มันคงจะดีถ้า Windows (หรือที่รู้จักง่ายกว่า) รองรับการลากข้อความจากกล่องข้อความ

XCode ดูด IMO จริงๆดังนั้นฉันจึงไม่ต้องการมันบน Windows VS ดีกว่ามาก แต่ไม่มีในตัวดังนั้นอาจสร้าง VS Expess พร้อมความสามารถในการอัปเกรด แน่นอนว่ารอยเท้าของ OS นั้นเพิ่มขึ้นตามนี้ (เช่นเดียวกับ OSX)

gcc แบบกระจายนั้นดีมากดังนั้นจึงน่ายินดีมากในฐานะเป็นเฟรมเวิร์กในตัวสำหรับคอมไพเลอร์ใด ๆ ที่จะใช้ (ดู Incredibuild สำหรับโซลูชัน VS)

มันจะดีถ้ามันง่ายกว่าที่จะรับและใช้ Builded Builded ของระบบปฏิบัติการเพื่อค้นหาปัญหา การใช้สายตรวจแก้จุดบกพร่องเป็นบิตสุดขีดสำหรับข้อมูลที่ดีที่คุณได้รับจากการตรวจสอบการสร้าง VM อาจทำสิ่งนี้ได้อย่างง่ายดาย - ถ้ามีคนโปรดแสดงความคิดเห็นพร้อมลิงค์


ใช่ IDE พื้นฐานจะดีโดยเฉพาะอย่างยิ่งความล้มเหลวที่ตัวแก้ไขข้อความ OK ปานกลางจะเป็นการเริ่มต้น
FinnNk

@FinnNk คุณต้องการข้อกำหนดสำหรับตัวแก้ไขข้อความ "ปานกลาง" หรือไม่?

รองรับการเน้นไวยากรณ์, ค้นหา / แทนที่ regex, หลาย windows, ช่องว่างที่มองเห็นและการกำหนดหมายเลขบรรทัด - ดังนั้นฉันไม่ได้มีสิ่งที่ชอบ emacs ในใจ (แม้ว่าจะเป็นตัวเลือกที่ดี) แม้ว่าจะไม่ใช่โปรแกรมแก้ไขข้อความจริงๆสำหรับบิตของรหัส. net วันนี้ฉันใช้ LinqPad มาก
FinnNk

4

BASH, sed, grep, awk, find และ ssh


ฉันใช้งานส่วนใหญ่บนหน้าต่าง ... และสามารถทำสิ่งต่าง ๆ ข้างต้นด้วย powershell
Murph

2
ssh พร้อม x windows support;) Bash นั้นทรงพลัง แต่ทุกอย่างภายใต้มันสามารถปรับแต่งได้เชลล์มีประสิทธิภาพเท่ากับทรัพยากรที่มันสามารถจัดการได้
Quaternion

ตั้งแต่เมื่อ awk และ sed จำเป็นสำหรับโปรแกรมเมอร์?
ไดนามิก

2
  • คัดลอก / วางสำหรับวัตถุหลายรายการ
  • วางรูปแบบฟรี (ไม่มีข้อมูลแบบอักษร / ขนาด)

3
+1 สำหรับรูปแบบฟรี ฉันมักจะวางลงในพื้นที่ข้อความบนหน้าเว็บหรือ Notepad แล้วตัดเพื่อลบลักษณะข้อความ
Macneil

3
Windows รองรับการวางข้อความธรรมดาแอพพลิเคชั่นจำเป็นต้องติดตั้งเป็นตัวเลือก
GrandmasterB

1
@GrandmasterB ถ้าอย่างนั้นมันเป็นความปรารถนาที่คลิปบอร์ดที่ไม่มีฟอร์แมตจะเป็นค่าเริ่มต้น
pestaa

2

ความสามารถในการเปลี่ยน UI เป็นความรู้ของผู้ใช้ในระดับต่างๆ

ตัวอย่างเช่นนักพัฒนา / ผู้ดูแลระบบคุณอาจต้องมีระดับผู้เชี่ยวชาญใน UI


1

เครื่องมือประมวลผลไฟล์ Unix (wc, sort, uniq, awk, cat, grep, find, et cetera) รวมถึง - อย่างที่คนอื่น ๆ พูดถึง - เชลล์ที่ดี (เช่นทุบตี)

เพื่อให้เกิดประสิทธิผลใน Windows เมื่อฉันทำงานกับข้อความที่เกี่ยวข้องในที่สุดฉันจะต้องเข้าไปในกล่องคำสั่ง Unix โชคดีที่Cygwinเป็นแหล่งข้อมูลที่ยอดเยี่ยมเพียงเพื่อจุดประสงค์นั้น

ที่กล่าวว่าคุณต้อง "เชื่อง" Cygwin เพื่อให้ทำงานได้ดีกับระบบไฟล์ Windows; ยกเว้นว่าคุณแทนที่การตั้งค่าเริ่มต้นบางอย่างคุณสามารถรับไฟล์ที่มีสิทธิ์ที่น่ารังเกียจซึ่งยากต่อการลบ อะไรก็ตามที่เกินความต้องการพื้นฐานและคุณดีกว่าด้วย VM หรือการบูทคู่ แต่สำหรับวัตถุประสงค์ของฉันฉันค่อนข้างพอใจกับ Cygwin


0

ฉันเห็นด้วยกับโพสต์อื่น ๆ เพื่อเพิ่ม:

ฉันคิดถึง ssh ด้วย x forwarding vs windows remote desktop สำหรับผู้ที่ไม่ทราบว่าคุณสามารถเรียกใช้โปรแกรมเดสก์ท็อปทั่วทั้งเครือข่าย แต่มันทำหน้าที่เหมือนหน้าต่างท้องถิ่น


0

รองรับอาร์กิวเมนต์บรรทัดคำสั่งที่ยาวขึ้น คุณจะพบปัญหาอย่างรวดเร็วเมื่อสร้างโซลูชัน Java ที่ซับซ้อนที่ไม่ได้ใช้ระบบการสร้างของ Microsoft


0

valgrindและgcov?

ฉันใช้ PowerShell เมื่อ developping บน windows (เป็นงานอดิเรก) และฉันได้ติดตั้งเครื่องมือ GnuWin32 (sed, awk, grep, etc ... ) และ Python เพื่อให้ได้สคริปต์ง่ายๆดังนั้นจึงไม่มีปัญหา

แต่ฉันพบว่าตัวเองชนกำแพงทุกครั้งที่ฉันต้องการตรวจสอบโปรแกรมของฉัน ... แน่นอนว่าฉันสามารถใช้ดีบักเกอร์ (บิต) แต่:

  • จุดหนึ่งหน่วยความจำรั่วอย่างไร
  • หนึ่งจะระบุหมูหน่วยความจำได้อย่างไร
  • วิธีการที่จะระบุฮอตสปอตได้อย่างไร
  • วิธีการระบุส่วนที่ไม่ได้ใช้ / ไม่ผ่านการทดสอบของรหัสอย่างไร

ฉันได้เห็นเครื่องมือบางอย่างที่นี่และที่นั่นและมีคำถามที่ดีเกี่ยวกับStackOverflowและจำนวนของเครื่องมือที่ระบุไว้นั้นค่อนข้างน่ากลัว ... และข้อ จำกัด ของพวกเขาเช่นกัน

นักพัฒนา Linux สร้างโดยนักพัฒนาจึงมีเครื่องมือที่เป็นมิตรมากขึ้นสำหรับนักพัฒนา :)


0

คัดลอก / วางด้วยฟังก์ชันประวัติ

Luckily ClipXเสนอทางออก:

ClipX

PS ฉันไม่ได้มีส่วนเกี่ยวข้องกับ ClipX;)


-1

เชลล์ที่ดีบวกกับคอมไพเลอร์จะเป็นการเริ่มต้นที่ดีโดยคำนึงถึงคุณลักษณะ "เริ่มต้น"


csc.exe รวมอยู่ใน. NET Framework คุณสามารถรวบรวมรหัส C # กับมัน
Victor Hurdugaci

@Victor: มีอยู่ใน Windows stock หรือไม่
Josh K

ใช่. .NET 3.0 มาพร้อมกับ Windows 2008 และ Vista ในขณะที่ 3.5 มาพร้อมกับ Windows 7
Victor Hurdugaci

3
ฉันเห็นด้วยถ้าเรากำลังพูดถึง windows รุ่นปัจจุบันคำตอบนี้ไม่สมเหตุสมผล - คุณได้ทั้งคอมไพเลอร์และพาวเวอร์เชล
FinnNk
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.