มีวิธีรองรับการรันแอปพลิเคชั่น. NET 4.0 บนเครื่อง Mac หรือไม่?


11

ตัวเลือกการสนับสนุนของ Microsoft สำหรับการใช้งานรหัส C # /. NET 4.0 บน Mac คืออะไรถ้ามี ใช่ฉันรู้เกี่ยวกับ Mono แต่เหนือสิ่งอื่นใดมันล่าช้า Microsoft และ Silverlight จะทำงานในเว็บเบราว์เซอร์เท่านั้น โซลูชันประเภท VMWare จะไม่ลดลงเช่นกัน

มีคำตอบกึ่งเผด็จการว่าทำไม Microsoft เพียงแค่ไม่สนับสนุน. NET บนเครื่อง Mac? ดูเหมือนว่าพวกเขาจะสามารถ Silverlight และ / หรือซื้อ Mono ได้อย่างรวดเร็ว ไม่จำเป็นต้องมี Visual Studio ดั้งเดิม การคอมไพล์ข้ามและการดีบักแบบรีโมททำได้ดี

เหตุผลก็คือที่ที่ฉันทำงานมีจำนวนไม่แน่นอนเกี่ยวกับอนาคตที่เพิ่มขึ้นซึ่งทำให้การพัฒนามากขึ้นที่จะต้องทำใน C ++ แทน C #; โครงการใหม่ล่าสุดกำลังถูกเลือกให้ใช้ C ++ ไม่มีใครต้องการบอกการจัดการ 18–24 เดือนนับจากนี้ "ขอโทษ" หาก Mac (หรือ iPad) กลายเป็นข้อกำหนด C ++ ถูกมองว่าเป็นตัวเลือกที่ปลอดภัยยิ่งขึ้นแม้ว่าจะ (หมายถึง) หมายถึงการสูญเสียผลผลิตในปัจจุบัน


2
สนับสนุนโดยใคร

ทำไมคุณถึงสนใจว่า MS รองรับหรือไม่ IMO ควรมีความสำคัญมากกว่านี้หาก Apple รองรับหากคุณต้องการกำหนดเป้าหมายเป็น Mac
ทางเลือก

การไปกับ C ++ ไม่ใช่ความคิดที่เลว คุณสามารถมีฐานรหัสแบบพกพาและใช้ GUI พื้นฐานบนแต่ละแพลตฟอร์ม
mike30

1
หากต้องการอัปเดตโพสต์นี้ดูเหมือนว่า MS ได้แจ้งให้ทราบแล้วและพวกเขาจะเริ่มให้การสนับสนุน. NET บนระบบปฏิบัติการที่แตกต่างกันถึงแม้ว่ามันจะไม่ชัดเจนว่าจะทำอย่างไร คุณสามารถสร้างแอปพลิเคชันข้ามแพลตฟอร์มด้วย. NET โดยใช้ NOV: nevron.com/products-open-vision.aspx (ฉันทำงานให้กับ บริษัท นี้) โดยทั่วไปจะอนุญาตให้คุณเขียนโค้ดใน C # บน windows จากนั้นรวบรวมสำหรับ Wpf, MAC, Silverlight และอีกไม่นานสำหรับ iOS และ Android มีรุ่นฟรี (ชุมชน) ของผลิตภัณฑ์นี้จึงไม่จำเป็นต้องเสียสละผลิตผลและติดกับ arcane C ++
Bob Milanov

คำตอบ:


17

มีคำตอบกึ่งเผด็จการทำไม Microsoft เพียงไม่สนับสนุน. NET บน Mac เอง?

คำตอบที่ดีที่สุดคือคุณไม่ได้ "แค่รองรับ". NET บน Mac คุณใช้เงินหลายร้อยล้านดอลล่าร์และการย้าย. NET ไปยัง Mac เป็นเวลาหลายปี

ในขณะที่บางสิ่งได้รับการจัดการอย่างเต็มที่และไม่จำเป็นต้องมีการย้ายพอร์ตสิ่งต่าง ๆ ส่วนใหญ่จะล้อมรอบ Win32 API (หน้าต่างตัวควบคุม gdi + การเข้ารหัสไดเรกทอรีที่ใช้งานอยู่ COM บริการขององค์กรการเข้าถึงอุปกรณ์เสียงวิดีโอตัวแปลงสัญญาณ winforms ฯลฯ ฯลฯ )

แต่ละอันจะต้องถูกแยกออกในแบ็กเอนด์และแมปไปยังไลบรารี่ที่เทียบเท่าใน OSX แน่นอนว่าจะไม่มีการแมปที่ดีดังนั้นคุณต้องเขียนแฮ็กเมื่อแฮ็กเพื่อให้มันทำงานเหมือนเดิม

จากนั้นมีปัญหาที่ APIs เหล่านี้บน OSX อาจมีความเปราะบางและ Apple ไม่สามารถใช้งานร่วมกันได้ดีดังนั้นคุณจะต้องทำซ้ำแฮ็คของคุณด้วยการเปิดตัวครั้งสำคัญทุกครั้ง (และบางครั้ง

โดยพื้นฐานแล้วมันเป็นเงินจำนวนมหาศาลและทำงานเพื่อผลประโยชน์เพียงเล็กน้อยบนแพลตฟอร์มที่เจ้าของอาจจะไม่พอใจคุณเลย และคุณไม่ต้องการใช้เงินเพื่อช่วยให้ผู้คนโยกย้ายออกจากแพลตฟอร์มของคุณไปยังคู่แข่ง

ดังนั้นคุณจะเหลือทางเลือกข้ามแพลตฟอร์มที่ไม่สมบูรณ์แบบ:

  • C ++ ซึ่งจะยังคงต้องมีการย้ายในอนาคต
  • Silverlight ออกจากเบราว์เซอร์สำหรับการสนับสนุนของ Microsoft
  • Mono ซึ่งทำงานเพื่อสนับสนุนชุดย่อยที่ดีต่อสุขภาพของ. NET แต่ไม่ใช่ Microsoft

5
You spend hundreds of millions of dollars and several years porting .NET to the Mac.ขออนุญาต? ตัวเลขนั้นฟังดูสูงนิดหน่อย ... ฉันค่อนข้างแน่ใจว่า Mono-Framework (พร้อมรองรับระบบปฏิบัติการอื่น ๆ อีกมากมาย) ไม่ได้คุ้มค่ามากนัก
Bobby

1
@ บ๊อบบี้: นั่นคือสิ่งที่ฉันคิด Mono + Silverlight ดูเป็นไปได้มากที่สุด เพิ่มไปที่ P / Invoke และ / หรือ C ++ / CLI สำหรับสิ่งที่ไม่สำคัญ (Cryptography, AD, ฯลฯ ) และฉันคิดว่าคุณมีวิธีแก้ปัญหาที่สมเหตุสมผลในราคาที่สมเหตุสมผล เหตุผลของฉันคือ Microsoft ไม่ต้องการใช้จ่ายเงินเพื่อช่วยเหลือผู้คนในการใช้ OSX หากไม่เป็นเช่นนั้นผู้คนจะหยุดใช้ C # /. NET บน Windows
Febаn

@ ด่าน: แน่นอน Microsoft ไม่ต้องการให้เข้ากันได้กับโลกมิฉะนั้นโลกอาจใช้สิ่งที่แตกต่าง ;)
Bobby

15
เฟรมเวิร์กโมโนยังเป็นโซลูชันที่ไม่ผ่านการทดสอบและรองรับอย่างสมบูรณ์ มีความแตกต่างในสิ่งที่ "ดีพอ" สำหรับโอเพ่นซอร์สและผู้คนที่มีคุณภาพคาดหวังจาก Microsoft มันจะเสียค่าใช้จ่ายหลายร้อยล้านดอลลาร์อย่างง่าย ๆ สำหรับพวกเขาในระดับที่ผู้ใช้ต้องการ สิ่งที่พวกเขาสามารถทำได้เพื่อลดการลงทุนคือการเลือกเซตย่อย (และพกพา) ที่ได้รับความนิยมของ. NET Framework และเพียงแค่ทำมัน นั่นคือสิ่งที่พวกเขาเลือกที่จะทำพวกเขาเรียกมันว่า "Silverlight"
jpobst

@jpobst แต่ดูเหมือนว่า MS จะทำเช่นนั้น ... และอีกมากมายใช่ไหม
Ðаn

14

ไม่ Silverlight เป็นตัวเลือกเดียวของ Microsoftจาก. Net บน OS X. Mono ไม่ "ล้าหลัง" เท่าที่คุณคิด มันรองรับ. Net 4.0 และ C # 4 ตัวอย่างเช่น อย่างไรก็ตามชุดเครื่องมือ UI (WinForms และ WPF) นั้นไม่ได้รับการรองรับบน OS X Mono ไม่รองรับ WPF เลย Microsoft ไม่สามารถทำได้โดยไม่ต้องเขียนเอนจิ้นการเรนเดอร์ใหม่ทั้งหมด ที่อาจตกลง หากคุณต้องการเขียนแอพ Mac ดั้งเดิมคุณควรจะเขียน UI ดั้งเดิม (อาจใช้ MonoMac)


ดูเหมือนว่าฝ่ายจัดการจะไม่ค่อยมีแนวโน้มที่จะไปพร้อมกับตัวเลือกโมโน และแน่นอนว่ามันไม่รองรับ. NET 4.0 ในวันเดียวกับ Windows (หรือ?)
Febаn

Silverlight ไม่ได้เป็นส่วนใหญ่ของวิธีที่มีอยู่ในด้านหน้า WPF (เหมือน) หรือไม่? ใช่ XAML จะต้องมีความแตกต่างเพื่อให้ได้รูปลักษณ์และความรู้สึกของ Mac
Febаn

2
@ ด่าน: วิธีที่โมโนย้ายมาในวันนี้หากคุณเริ่มพัฒนาแอพสำหรับ. NET เวอร์ชั่นล่าสุดเมื่อ Microsoft ออกมา Mono จะสนับสนุนเวอร์ชันเดียวกันนั้นตามเวลาที่แอพพร้อมจัดส่ง
อานนท์

@Dan SL และ WPF ภายใต้หน้ากากกำลังพยายามผสานให้มากที่สุด มีความแตกต่างทางเทคนิค แต่แนวคิดพื้นฐานคือข้ามแพลตฟอร์ม
Aaron McIver

6
หากการจัดการ บริษัท ของคุณไม่เต็มใจที่จะใช้ Mono คุณจะไม่สามารถสร้างแอปพลิเคชันเดสก์ท็อปที่เขียนด้วยภาษา C # 4.0 แบบง่าย ๆ
Ramhound

5

ไม่ใช่โมโนคือทางออกที่ดีที่สุดของคุณ

โครงการโอเพ่นซอร์สอื่น ๆ เช่น DotGNU อาจให้บริการคุณเช่นกัน http://www.gnu.org/software/dotgnu/ แต่ไม่มีสิ่งใดที่รองรับ MSFT ได้


4

Silverlight ไม่ได้เป็นเบราว์เซอร์เท่านั้น ตั้งแต่รุ่น 3 OOBมีอยู่และจะเป็นเส้นทางที่ฉันจะใช้ถ้าแพลตฟอร์มที่รองรับของ Microsoft นั้นเป็นสิ่งที่ต้องมี

ในขณะที่โมโนอาจล่าช้ามันไม่ได้ถูกลบออกจาก. NET สแต็คอย่างที่คุณคิดและไม่ควรทิ้งไว้เป็นตัวเลือกที่ทำงานได้

เหตุใด Microsoft ไม่ใช้. NET ทั้งกอง ผลตอบแทนการลงทุน


แต่ดูเหมือนว่าพวกเขากำลังใกล้จะหมดด้วย Silverlight ... ทำไมไม่เพียง แต่เสร็จงาน? ดูเหมือนว่าจะดีขึ้นสำหรับทุกคนมากกว่า Mono reverse-engineering คอมไพเลอร์, CLR และอื่น ๆ
--аn

1
SL ไม่ใช่สแต็ก. NET ทั้งหมด SL รันไทม์เมื่อเทียบกับ. NET สแต็กทั้งหมดเป็นสัตว์ที่แตกต่างอย่างสิ้นเชิง
Aaron McIver

ใช่ แต่เนื่องจากคุณสามารถทำสิ่งต่าง ๆ เช่น OOB ตามที่คุณแนะนำกับ SL ได้แล้วทำไมไม่พอร์ตส่วนที่เหลือ (1/3? 40%?) ของ. NET stack? หรือว่า SL ไม่มีอะไรมากไปกว่าการพยายามฆ่า Flash?
Ðаn

@Dan เมื่อ บริษัท ต่างๆกำลังผลักดันสิ่งต่าง ๆ สู่คลาวด์ ... สิ่งสุดท้ายที่คุณต้องการทำคือพอร์ตสแต็คข้ามที่ไม่สามารถทำงานในคลาวด์ได้ SL สามารถเรียกใช้ผ่านเบราว์เซอร์ คุณสามารถโต้เถียงกับสิ่งที่ชอบของ Google และคนอื่น ๆ การผลักดันการทำงานภายในเบราว์เซอร์นั้นเป็นเรื่องจริง ทำไมในเวลานี้คุณจะเลือกพอร์ตทั้งสแต็คกับระบบปฏิบัติการที่มีส่วนแบ่งการตลาด <10% พร้อมกับการจำลองเสมือนดังนั้นแพร่หลายในวันนี้และอายุ?
Aaron McIver

Microsoft (arguably) มีสภาพแวดล้อมการพัฒนาที่ดีที่สุดในปัจจุบันด้วย C # และ. NET แต่ บริษัท อย่างเช่นของฉันจะอายมากกว่าเพราะความไม่แน่นอนรอบ ๆ Mac / iPad / cloud / ฯลฯ C ++ ดูปลอดภัยกว่ามาก
Ðаn

3

กำไรส่วนใหญ่ของ Microsoft มาจากสองผลิตภัณฑ์ - Windows และ Office ความเข้ากันได้ข้ามแพลตฟอร์มจะทำให้ Windows เสียหาย

หากคุณต้องการรหัสเดียวกันที่ทำงานข้ามแพลตฟอร์มให้เขียนเว็บแอป มันฟังดูไม่เหมือนที่คุณทำ “ แค่ในกรณี” ไม่ใช่เหตุผลที่ดี แต่มันก็คืบคลานไป

แม้ว่าคุณจะตัดสินใจกำหนดเป้าหมายเป็น Mac OS X หรือ iOS ใน 16 เดือนนับจากนี้คุณคิดว่าคุณสามารถใช้รหัส C ++ ที่มีอยู่แล้วเปลี่ยนเป็นแอปเนทีฟที่ดี (หรือใช้งานได้) ถ้าคุณไม่ทำงานในเกมเต็มหน้าจอคำตอบคือไม่

ประหยัดเวลาด้วย C # ทันทีและหากคุณตัดสินใจที่จะย้ายไปยัง Mac ให้เขียนวิธี Mac ใหม่ด้วย Objective-C และ Cocoa ผู้ใช้ของคุณจะขอบคุณ


1
"ในกรณี" คือความจริง; ไม่มีใครอยากบอกการจัดการ "โอ๊ะโอ" เมื่อมีตัวเลือกที่ปลอดภัยกว่าใน C ++
Ðаn

1
สมมติว่ารหัสอินเทอร์เฟซถูกแยกออกอย่างถูกต้องจะเป็นการง่ายกว่าที่จะย้ายรหัส C ++ ไปยัง Mac เขียนอินเทอร์เฟซใน Objective-C อีกครั้งโดยใช้ Cocoa เชื่อมโยงไปยังส่วนที่เหลือและคุณทำงานเสร็จแล้วมากมาย
David Thornley

@ David: และด้วยเหตุนี้ปัญหาที่อยู่เบื้องหลังคำถามนี้: เพิ่มเติม C ++, (มาก) น้อย C # ฉัน (จริงๆ) ชอบ C #!
Ðаn

ข้อกังวลข้ามแพลตฟอร์มเหล่านี้ที่นี่คือเหตุผลที่พวกเราหลายคนยังคงใช้ Java และไม่ย้ายไปที่ C #
Brian Knoblauch

1

มีคำตอบกึ่งเผด็จการทำไม Microsoft เพียงไม่สนับสนุน. NET บน Mac เอง?

ตลาดที่จะทำให้ MS ใช้จ่ายสมบัติในการเข้ารหัสอยู่ที่ไหน ในการทำเช่นนี้พวกเขาจะต้องวางเงินสดร้ายแรง - เงินเดือนหลายล้านดอลลาร์ กระบวนการต่อเนื่องเนื่องจากการแก้ไขและการปรับปรุงมาพร้อมกัน

และเพื่ออะไร สิทธิเป้อเย้อ? สิ่งที่พวกเขาได้รับจากมันคือความสามารถในการให้คนใช้ Windows สำหรับ Apple และยังสามารถเรียกใช้แอพ

ถ้าใครจะได้กำไรจากการทำเช่นนี้มันจะเป็น Apple ทำให้ผู้คนสามารถเปลี่ยนไปใช้แพลตฟอร์มของพวกเขาและสำหรับนักพัฒนาซอฟต์แวร์ (DEVELOPERS DEVELOPERS) ได้ง่ายขึ้น แต่คุณคิดว่า SJ ให้เรื่องไร้สาระหรือไม่? พวกเขาต้องการประดิษฐ์สิ่งใหม่ ๆ เพื่อติดกับหน้าฉัน นอกจากนี้กรอบงานส่วนใหญ่คือระบบปฏิบัติการและข้อกำหนด CLR นั้นฟรีสำหรับทุกคนที่จะนำไปใช้ คุณไม่สามารถติด NDA ที่สกปรกบนสิ่งใดสิ่งหนึ่งได้


ส่วนหนึ่งของ "สิ่งที่มีอยู่ใน Microsoft" คือการทำให้ผู้คนใช้เครื่องมือที่มีคุณภาพสูงสุดของ Windows สิ่งที่เกิดขึ้นที่นี่คือ C # /. NET จะถูกลดชั้นลงไปที่แอพภายใน นักพัฒนาที่ใช้ C # มาหลายปีกำลังเขียน C ++ อีกครั้ง สำหรับค่าใช้จ่าย; ดูเหมือนว่าพวกเขามีประมาณ 2/3 แล้วใน Silverlight และ / หรือ Mono
Febаn

Mono เป็นแพลตฟอร์มโอเพ่นซอร์สและในขณะที่แหล่งที่มาสำหรับ. NET ได้รับการเผยแพร่. NET Framework ไม่ใช่โอเพ่นซอร์ส Microsoft จะไม่สามารถซื้อ Mono ได้ด้วยเหตุผลหลายประการสิ่งสำคัญคือพวกเขาไม่มีแอปพลิเคชันโอเพนซอร์ส 100% เดียว คุณรู้หรือไม่ว่า Silverlight เป็นเพียงภาษาเดียวใน. NET และเหตุผลที่เป็นหลายแพลตฟอร์มเนื่องจาก Microsoft ต้องการให้เป็น Flash แทน ฉันควรเพิ่มด้วยว่า Apple ได้ทำการเคลื่อนไหวด้วยมือโดยไม่ยอมให้สิ่งนี้บนระบบปฏิบัติการของพวกเขา
Ramhound

1
@Dan ดูเหมือนวิธีแก้ปัญหาของคุณไม่ใช่ "ภาษาเดียวที่จะปกครองทั้งหมด" แต่ "เราจะปรับใช้ในลักษณะที่ไม่เชื่อเรื่องพระเจ้าได้อย่างไร" คนส่วนใหญ่ประสบความสำเร็จในการทำสิ่งนี้โดยการทำลาย UI จากตรรกะการฝังสิ่งใดสิ่งหนึ่งบนพื้นฐานต่อแพลตฟอร์มและอื่น ๆ เป็นบริการบน Innertubes
ฉีกออก

1
@Dan ฉันมีวิธีแก้ปัญหาสำหรับที่ ... อย่ารหัสสำหรับ Mac ฉันมีข้อตกลงสำหรับ Non-Develop-for-Apple ส่วนตัวที่ฉันเขียนและลงนามเอง ฉันจะเกลียดอย่างยิ่งที่จะไม่สามารถรหัส C # และหลีกเลี่ยงการทำเช่นนั้น แต่บางครั้งคุณต้องทำในสิ่งที่คุณต้องทำและถ้าความปรารถนาเป็นปลาเราจะต้องคิดถึงการพูดพาดพิงถึงสิ่งอื่น ๆ เพื่ออธิบายสิ่งต่าง ๆ ที่เราต้องการ แต่ไม่มี
ฉีกออก

1
@ Dan kindasorta พวกเขาไม่ได้สัมผัสเดสก์ท็อปจริงๆ (ยัง) แต่ฉันประหลาดใจในสิ่งที่ทำให้ห้าปีที่แตกต่างกัน
ฉีกออก

0

คุณอาจพบว่าโครงการ MonoMac มีประโยชน์ - http://www.mono-project.com/MonoMac

อนุญาตให้พัฒนาแอพพลิเคชั่นสไตล์โกโก้แบบโมโนซึ่งสามารถนำไปใช้กับร้านค้า Mac App

ฉันจะพิจารณาแนวทางนี้อย่างยิ่งสำหรับนักพัฒนาที่ไม่คุ้นเคยกับ Objective-C แต่กับ. NET / Mono / Java ที่ต้องส่งมอบแอปพลิเคชันในสถานการณ์ที่ถูก จำกัด เวลา


0

ไม่มี.

ฉันขอแนะนำให้เขียนแอปพลิเคชัน C ++ แบบข้ามคอมไพล์ได้หรือไม่คุณอาจมีความสุขได้หรือใช้ Ruby กับ wxWidgets

ฉันพิจารณา. NET เรื่องที่ไม่ดีสำหรับการพัฒนาข้ามแพลตฟอร์มและการบำรุงรักษาผลิตภัณฑ์ระยะยาว แม้ว่ามนุษย์คุณจะสามารถส่งแอพพลิเคชั่นได้อย่างรวดเร็ว : - /

Wish Delphi ยังคงเป็นคู่แข่งสำคัญ


1
เคยได้ยิน Lazarus บ้างไหม?
Happy Coder

นอกจากนี้เคยเป็นหัวหน้าของ Java?
เฟอร์นันโดกอนซาเลซซานเชซ

0

ถ้าคุณต้องการเรียกใช้. NET บน Mac คุณสามารถใช้ BootCamp เพื่อทำสิ่งนี้ (เช่นคุณเรียกใช้ Windows บน Mac และแอปพลิเคชัน. NET ของคุณใน Windows)

หากคุณหมายถึง Mac OS X แทนที่จะเป็นเพียงฮาร์ดแวร์คุณสามารถใช้ VMWare หรือ Parallels เพื่อรันแอปพลิเคชั่น. NET ใน Windows (ในการจำลอง) ใน OS X ทั้งคู่มีโหมดภาพที่ทำให้แอปพลิเคชันของคุณปรากฏขึ้น ภายใน OS X (จะมีลักษณะและทำงานเหมือนแอปพลิเคชัน Windows แต่ถ้าคุณกำลังเขียนแอปพลิเคชันข้ามแพลตฟอร์มที่ไม่มีเว็บโดยไม่ต้องมีอินเตอร์เฟสที่กำหนดเองสำหรับแต่ละระบบปฏิบัติการคุณจะมีปัญหานั้นเสมอ)

คุณจะได้รับ "การสนับสนุน" จำนวนเท่าเดิมโดยทำเช่นนี้เนื่องจากคุณใช้งานแอพใน Windows แม้ว่าจะเป็นเวอร์ชวลไลเซชันก็ตาม แน่นอนว่าทุกคนที่ใช้งานแอพจะต้องมีซอฟต์แวร์ virtualization และ Windows และยินดีที่จะติดตั้งแอพที่ไม่ทำงานเหมือนแอพ OS X - แต่เป็นวิธีเดียวที่จะมี "native" .NET ทำงานบน Mac


0

แดนฉันไม่คิดว่าคุณจะทำได้ อย่างไรก็ตามวิธีแก้ปัญหาที่เป็นไปได้ (ยัง vapourware) คือการใช้ Embarcadero Rad Studio C ++ Builder ซึ่งมี VCL ที่ดีสำหรับการพัฒนาแอปพลิเคชั่นภาพ ในรุ่นถัดไป

สิ่งนี้จะถูกพัฒนาบน windows, กำหนดเป้าหมายเป็น Mac หรือ Linux ดังนั้นแผนงานของพวกเขาก็บอกว่า

สภาพแวดล้อม C ++ นั้นสมเหตุสมผลและถ้าคุณพัฒนาเทียบกับ VCL ในทางทฤษฎีแล้วแอปพลิเคชันจะทำงานบนแพลตฟอร์มอื่น ๆ

แน่นอนว่าจนกว่าจะมีการส่งมอบจริงมันก็ยังคงอยู่ที่จะเห็นว่ามันมีประสิทธิภาพจริงๆ


-2

คำตอบคือไม่

จริงๆแล้วกรณีของคุณน่าจะเป็นตัวอย่างที่ดีมากเมื่อไม่เลือก. NET


ไม่มีใครสามารถทำนายอนาคตได้และไม่มีใครต้องการรับความเสี่ยง "เกินควร"
Febаn

@ ด่าน: และประเด็นคือ? คุณดูเหมือนจะเห็นด้วยกับฉัน ... ?
Gabriel Magana

-3

หากคุณต้องการพัฒนาสำหรับระบบปฏิบัติการให้ใช้เครื่องมือที่เหมาะสม ไม่มีแอพมืออาชีพที่เขียนด้วยภาษาโมโนสำหรับ Mac อย่างแท้จริง ในทางกลับกันนักพัฒนาที่ไม่ใช่มืออาชีพจำนวนมากใช้เครื่องมือมากมายในการสร้างขยะจำนวนมาก ดูรีวิวแอพโมโนที่เขียนขึ้นสำหรับ OSX นักพัฒนากำลังเขียนโดยใช้เฟรมเวิร์กที่ไม่สมบูรณ์ซึ่งถูกแฮ็กเพื่อให้ตรงกับแพลตฟอร์ม OSX เริ่มเขียน - ถ้าคุณใช้ C # Objective C เป็นการเรียนรู้อย่างรวดเร็ว

นักพัฒนามืออาชีพสำหรับ mac ใช้ C ++, Objective C, Cocoa และ Xcode ฉันพัฒนาบนแพลตฟอร์มต่าง ๆ และแต่ละอันก็มีเครื่องมือที่ดีที่สุดของตัวเอง ใช้ Xcode สำหรับ Mac และ iOS

เช่นเดียวกับโน้ตด้าน Xcode ไม่ใช่ Visual Studio มันไม่เสถียรและเป็นความอัปยศที่แอปเปิ้ลเปรียบเทียบ แต่มันทำงานได้ดีเมื่อคุณคุ้นเคยกับนิสัยใจคอของเขา มันยากมากที่จะเอาชนะเครื่องมือของ Microsoft - แต่เขียนขึ้นสำหรับ Windows ไม่ใช่ Linux, iOS, OSX, AIX เป็นต้น


1
คุณมีข้อเท็จจริงเกี่ยวกับคำแถลงการสำรองข้อมูลเช่น "Xcode ไม่เสถียรและน่าอับอายสำหรับ Apple" เพราะจากประสบการณ์ส่วนตัวของฉันเองทุกคนที่ใช้ Xcode รักมัน นอกจากนี้แม้หลังจากที่คุณแสดงความคิดเห็นส่วนตัวในเรื่องที่ดูเหมือนว่าคุณไม่คุ้นเคยกับคุณคุณยังไม่ทราบด้วยซ้ำว่าในปี 2013 มีวิธีแก้ไขปัญหาจริงๆ แน่นอนทางออกเป็นจริงMonoและXamarin.Macแต่มันเป็นทางออก Mono เวอร์ชั่นปัจจุบันเกือบเต็ม 100% การใช้. NET 4.0 มันขาดคุณสมบัติหลักเพียงไม่กี่อย่างที่ไม่น่าจะถูกย้าย (เช่น WPF)
Ramhound
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.