Visual Studio ile yapılan program macOS'da çalıştırılabilir mi?

anifraxe

Hectopat
Katılım
30 Temmuz 2019
Mesajlar
2.922
Çözümler
16
Daha fazla  
Cinsiyet
Erkek
Meslek
Öğrenci
Arkadaşlar merhaba, kısaca özet geçeyim:

Bilgisayar Programcılığı öğrencisiyim. Görsel Programlama dersi için bir proje ödevim var. Bir veri tabanına sahip program yapmamız isteniliyor. Aslında not olsun diye kıytırık bir stok takip programı yapmayı planlıyordum fakat sonra fikrim değişti; Dayımın bir tekstil atölyesi var ve personel bilgilerini, fason numaralarını vb. gibi bilgileri Excel dosyalarında tutuyor. Ben de şöyle bir karar aldım:
Sıradan bir stok takip programı yapmak yerine dayımın işine yarayacak bir program yapmaya kalkışayım. Hem daha çok özenmiş olurum, ne yaptığımı biliyor olurum hem de kendimi geliştirme açısından çok güzel bir fırsat olur diye düşündüm. Şuan da yavaş yavaş veri tabanı oluşturmaya başladım. Sorunuma gelecek olursam:

Bu programın veri tabanı için Microsoft SQL Server kullanacağım, programın kendisini de Visual Studio üzerinden C# diliyle yapacağım. Şöyle bir sıkıntı var; Dayımın atölyede kullandığı bilgisayar bir Macbook. Bunu hesaba katmamıştım. Henüz öğrenci olduğum için ve bu konularda fazla bir bilgi birikimim olmadığı için kafam allak bullak oldu ve sizlere kendimi netleştirmek için birkaç soru sormak istiyorum:

1-) Ben bu programı bitirip başka bir bilgisayarda kuracağım zaman o bilgisayarda Microsoft SQL Server bulunmak zorunda mı? Yanlış bilmiyorsam Microsoft SQL Server'i macOS sistemlerde doğrudan kullanmanın bir yolu yok. Tamam Microsoft SQL Server'i macOS sistemlerde kullanamıyoruz ama bu macOS sistemde kullanacağım programın veri tabanı Microsoft SQL Server ile kurulduğu için kullanamayacağım anlamına mı geliyor? Microsoft SQL Server'de veri tabanı kurarken doğrulama yöntemi seçiliyor ve varsayılan olarak "Windows Doğrulaması" seçili oluyor. Orada; "SQL Server Doğrulaması" diye bir seçenek daha oluyor ve bu da veri tabanını uzaktan kontrol etmeme yarayan bir sistem diye biliyorum.(Aklımda böyle bir bilgi kalmış emin değilim sizlere soruyorum).

2-) Visual Studio üzerinde Cross Platform adının geçtiği yerler görüyorum. Araştırmak için ise ChatGPT'yi kullandım ve orada da; "Eğer programı cross-platform'a uygun olarak yaparsanız macOS sistemlerde kullanabilirsiniz." gibi bilgiler mevcuttu. 2.sorum ise: Visual Studio'da Windows Forms ile tasarladığım programı tahminimce macOS sistemde doğrudan açamayacağım diye düşünüyorum. Açabilmek için ne yapmak gerekiyor? Direkt macOS işletim sisteminde çalışacak bir program yazmanın bir yolu var mıdır? Visual Studio üzerinde bir ayar var mıdır Yoksa macOS'da sanal makine vs. gibi şeylere başvurup sanal bir Windows kurarak mı bu programı çalıştırabileceğim? Kurduğum Forms uygulamasına Visual Studio içinde sağ tık yapıp Özellikler tıkladığım zaman; "Hedef İşletim Sistemi" şeklinde bir ibare var ve Windows seçili. Orayı değiştirmeye çalıştığım zaman değişmiyor. macOS veya herhangi bir şey seçince otomatik tekrar Windows'a alıyor.


Şuan için 2 tane böyle sorum var arkadaşlar..

Ben bu projeyi her hâlükârda yapıp ödevimi teslim edeceğim zaten. Fakat istiyorum ki yaptığım proje, yaptığım program bir yerde güncel olarak kullanılsın. Bunun için de atacağım ilk adımda karşıma maalesef Macbook çıkıyor.. İnternette araştırma yaptım fakat detaylı bilgi bulamadım. Soruları da net sorabildiğimi düşünmüyorum açıkçası. Aklımda ki şeyler çok karışık geliyor ve kelimelere dökemiyorum. O yüzden başlangıç olarak bu konuyu açmak istedim. Yardımcı olmaya çalışan arkadaşlarla beraber konuşurken aklımda ki şeyleri çok daha rahat kelimelere dökebilirim diye düşünüyorum. O yüzden ilk aşamada şu 2 soruma cevap verebilirseniz çok mutlu olurum, teşekkürler..
 
Winforms kullanmıyorsan çalışır.

MSSQL yerine MySQL kullanırsan da server sorunun çözülmüş olur. .NET MAUI yada AvaloniaUI gibi şeyler kullanman lazım. Winforms adı üstünde Windows forms uygulaması.

Uzak bağlantı için bilgisayarını yapılandırman lazım eğer bilgisayarını SQL server olarak kullanacaksan -ki başına epey dert açar sabit IP adresin olmadıktan sonra-, bununla uğraşmak yerine, mac'e MySQL kurarsın.

Ekleme konuyu iyice okudum, MSSQL ve MySQL serverları böyle bir uygulama için eğer internetten bağlantı desteği olmayacaksa gereksiz. SQLite kullan.
 
Winforms kullanmıyorsan çalışır.

MSSQL yerine MySQL kullanırsan da server sorunun çözülmüş olur. .NET MAUI yada AvaloniaUI gibi şeyler kullanman lazım. Winforms adı üstünde Windows forms uygulaması.

Uzak bağlantı için bilgisayarını yapılandırman lazım eğer bilgisayarını SQL server olarak kullanacaksan -ki başına epey dert açar sabit IP adresin olmadıktan sonra-, bununla uğraşmak yerine, mac'e MySQL kurarsın.

Ekleme konuyu iyice okudum, MSSQL ve MySQL serverları böyle bir uygulama için eğer internetten bağlantı desteği olmayacaksa gereksiz. SQLite kullan.
Merhaba, ilginiz için teşekkür ederim.. Bu veri tabanı meselesi bir hâyli canımı sıktı açıkçası. Eskiden SQL dilini yeteri kadar bilmiyorken, C# programlama dilini yeteri kadar bilmiyorken böyle bir program yapmak hayal gibi geliyordu. Şimdi ise o düşünceleri atlattım ve uzun da sürse hatalar da yapsam bu programı yapabileceğimi biliyorum. Fakat bu veri tabanı meselesini hiç düşünmemiştim. Programı yaparım, Visual Studio üzerinden programı dışarı çıkartırım ve flash belleğe atıp herhangi bir bilgisayara takıp rahatça kullanabilirim diye düşünüyordum :D

Size bir şey sormak istiyorum;

Ben normal şartlarda bu programı yapıp bitirdikten sonra herhangi başka bir Windows bilgisayara kuracağım zaman o bilgisayara Microsoft SQL Server de kurulacaktı değil mi veri tabanına erişebilmek, ve duzenleyebilmek için?

Yani ben bu işte zor olan kısmın; veri tabanını, programın GUI'sini hazırlamak yani işte programı yapabilmek olduğunu düşünüyordum fakat şimdi işin asıl zor kısmı bu programı başka bir bilgisayarda stabil bir şeklide çalıştırabilmek gibi geliyor. Hadi işin Visual Studio kısmını .NET MAUI ile halledebilirim gibi geldi internetten biraz araştırdım. Fakat bu veri tabanı meselesi kafamı allak bullak etti gerçekten. Program, 50 civarı çalışanın bilgilerini tutacak, 20-30 civarı mal türünün bilgilerini tutacak ve "ilk" aşamada 100-200 civarı da bu 20-30 tane malın detaylı fiyat bilgisini, dikilen adeti gibi bilgilerini tutacak her gün.


Şunu da söyleyeyim:
Dediğim gibi aslında bu bir proje ödevi ve teslimi için; Teslim günü geldiğinde programı setup haline getirip hocaya atacağız aynı zamanda da program hakkında kısa bir kullanım kılavuzu amaçlı programı tanittigimiz bir video çekmemiz istendi.

Ben ise öğrencilik hayatım boyunca Microsoft SQL Server haricinde hiçbir veri tabanı programı ile uğraşmadım. Okulda da bu öğretildi, ben ekstra olarak kendimi geliştirebilme amacıyla Udemy üzerinden kurs takip ediyorum ve bu kurslarda da Microsoft SQL Server öğretiliyor.

Başka bir SQL uygulamasına geçmek beni zorlar mı sizce?

Çok güzel ve anlaşılır şekilde bilgi verdiniz ama kendimi aşırı derecede yetersiz hissettim bu konuda. Sanırım sonuç olarak bunu sadece bir proje ödevi olarak tasarlayıp not almak için kullanacağım.

Benim normalde düşündüğüm şey; Veri tabanı uygulamasına sadece ben yani programı yapan kişi ihtiyaç duyar sanıyordum. Ben veri tabanını ve programı bitirdikten sonra bu programı direkt istediğim bilgisayara yükleyip kullanılabilmesini sağlayabilirim diye düşünüyordum fakat işler düşündüğümden de karışıkmış.


Size son olarak sormak istiyorum:

Yukarıda saçma sapan karışık şeyler mi yazdım bilmiyorum. Nedense kendimi doğru bir şekilde ifade etmekte bir hâyli zorlandım bu konuda. Normalde böyle bir şey asla yaşamazdım fakat muhtemelen bu konularda bilgi birikimim bir hâyli eksik olduğu için sapıttım. Her neyse:

Yukarıda yazdıklarımdan yola çıkarak sizce doğru mu düşünüyorum? Yani programı yapıp bitirdikten sonra bu programı her şeyiyle beraber başka bir bilgisayarda kullanıma açabilmek meșaketli bir iş midir? Başka bir bilgisayarda güncel olarak kullandırtma düşüncemden şimdilik vaz mı geçmeliyim sizce? Dediğim gibi; ben normalde, programı yapıp bitirdikten sonra program, bir nevi "tak çalıştır" formatında kullanılabilir sanıyordum fakat öyle değilmiş. Cross-Platform olayı yüzünden söylemiyorum bunu. Onu dediğiniz gibi .NET MAUI kullanarak çözebilirim sanırım eğer forms'dan aşırı farklı değilse. Fakat bu veri tabanı konusunda çıkmaza girmiş gibi hissediyorum, işin içinden çıkamadım bir türlü.
 
Ben normal şartlarda bu programı yapıp bitirdikten sonra herhangi başka bir Windows bilgisayara kuracağım zaman o bilgisayara Microsoft SQL Server de kurulacaktı değil mi veri tabanına erişebilmek, ve duzenleyebilmek için?
Evet. Eğer bir server yoksa, her kurulan makineye local server kurman lazım, port açman lazım vs vs. Gereksiz iş. SQLite kullan diyorum bu yüzden. Local yada remote server ihtiyacını ortadan kaldırır.
Yani ben bu işte zor olan kısmın; veri tabanını, programın GUI'sini hazırlamak yani işte programı yapabilmek olduğunu düşünüyordum fakat şimdi işin asıl zor kısmı bu programı başka bir bilgisayarda stabil bir şeklide çalıştırabilmek gibi geliyor. Hadi işin Visual Studio kısmını .NET MAUI ile halledebilirim gibi geldi internetten biraz araştırdım. Fakat bu veri tabanı meselesi kafamı allak bullak etti gerçekten. Program, 50 civarı çalışanın bilgilerini tutacak, 20-30 civarı mal türünün bilgilerini tutacak ve "ilk" aşamada 100-200 civarı da bu 20-30 tane malın detaylı fiyat bilgisini, dikilen adeti gibi bilgilerini tutacak her gün.
MySQL, MSSQL, SQLite, hiç biri bu kadarcık veriyle sıkılmaz.
Ben ise öğrencilik hayatım boyunca Microsoft SQL Server haricinde hiçbir veri tabanı programı ile uğraşmadım. Okulda da bu öğretildi, ben ekstra olarak kendimi geliştirebilme amacıyla Udemy üzerinden kurs takip ediyorum ve bu kurslarda da Microsoft SQL Server öğretiliyor.
Eğer tabloları GUI ile oluşturmak yerine SQ*L* * kullanarak oluşturuyorsan, zorlamaz. Komutlar üç aşağı beş yukarı aynı. Dökümanları online da var. Takıldığın yerde AI'ı da döküman için kullanabilirsin.
Benim normalde düşündüğüm şey; Veri tabanı uygulamasına sadece ben yani programı yapan kişi ihtiyaç duyar sanıyordum. Ben veri tabanını ve programı bitirdikten sonra bu programı direkt istediğim bilgisayara yükleyip kullanılabilmesini sağlayabilirim diye düşünüyordum fakat işler düşündüğümden de karışıkmış.
O kadar karışık değil. Programı çalıştıran herkesin ona bağlanabilmesi lazım. Genelde uzak bir sunucuda, bir tane db oluşturursun sonrasında da uygulamadan bağlanırsın. En sağlıklı ve güvenli yöntem API ile bağlanmak olur sunucuya çünkü decompile ederek programı açık bakarlarsa bağlantı stringlerini görürler, onlarda bağlanabilir hale gelir. Ama senin durumunda bu tarz şeyler bence önemli değil. Daha küçük bir şey lazım sana, o yüzden SQLite yeterli diyorum.
Yukarıda yazdıklarımdan yola çıkarak sizce doğru mu düşünüyorum? Yani programı yapıp bitirdikten sonra bu programı her şeyiyle beraber başka bir bilgisayarda kullanıma açabilmek meșaketli bir iş midir? Başka bir bilgisayarda güncel olarak kullandırtma düşüncemden şimdilik vaz mı geçmeliyim sizce? Dediğim gibi; ben normalde, programı yapıp bitirdikten sonra program, bir nevi "tak çalıştır" formatında kullanılabilir sanıyordum fakat öyle değilmiş. Cross-Platform olayı yüzünden söylemiyorum bunu. Onu dediğiniz gibi .NET MAUI kullanarak çözebilirim sanırım eğer forms'dan aşırı farklı değilse. Fakat bu veri tabanı konusunda çıkmaza girmiş gibi hissediyorum, işin içinden çıkamadım bir türlü.
Aşağı yukarı doğru düşünüyorsun ama eksik düşünüyorsun. Eksik olduğun için doğru desem daha mantıklı olur.

Şimdi, sen sadece local ortamda server ile geliştirme yaptın şimdiye kadar, bu yüzden cloud ile bağlantı hakkında bir fikrin yok, ve bu yüzden programı taşıdığın her bilgisayarın local bağlanacağı fikrindesin. Bundan kaynaklı olarak da zor olacağını düşünüyorsun ve böyle kurulum yapsan sürekli, evet zor olacak.

Ancak MySQL/MsSQL gibi şeyleri en başından local kullanmıyoruz zaten. Bir sunucu oluyor ve bu sunucuya bağlanıyoruz. Böylece programı kuran herkes, program aracılığıyla o sunucuya bağlanıp işini görebiliyor. Sunucuya bağlanmak için de onlar bir ayar yapmak zorunda kalmıyor. Kur çalıştır yetiyor yani.

Şimdi senin durumunda lazım olan şey, eğer internet gerektiren özellikler olmayacaksa (senkronizasyon vs.) SQLite yeterli sunucusuz. Kullanımına dair internette rehber bulursun. Dikkat et kuracağın SQLite librarysi Cross-platform olsun. (Official library cross paltform mu değilim. Sonuçta dosya manipülasyonu söz konusu ve Windows dosya işlemleri methodlarına göre yazıldıysa başını ağrıtabilir MacOS'de vs.)

SQLite'ta sunucu servisi yok. Onun yerine direkt dosya okuyup yazıyorsun. Yine de komutlar MSSQL vs ile daha önce de dediğim gibi üç aşağı beş yukarı aynı. SELECT id, name FROM users WHERE id = '{uid}' şeklinde veri çekiyorsun mesela.

.NET MAUI mevzusunda da, XAML kullanıyor designda ve MVVM patterniyle kullanman gerekiyor. Avalonia UI'da öyle. Alışması sürer biraz ama çok zor değil. AvaloniaUI tavsiye ederim bu arada.

*: SQL dediğimiz şeyin kendisi bir dil. Structured Query Language. MsSQL, MySQL, SQLite vs ise bu dil yapısını kullanan veri tabanı servisleri.

Çok uzun yazdım, bir yerde gözden kaçırdığım eksik yazdığım bir şey olabilir. Aklıma gelirse eklerim.
 
Evet. Eğer bir server yoksa, her kurulan makineye local server kurman lazım, port açman lazım vs vs. Gereksiz iş. SQLite kullan diyorum bu yüzden. Local yada remote server ihtiyacını ortadan kaldırır.

MySQL, MSSQL, SQLite, hiç biri bu kadarcık veriyle sıkılmaz.

Eğer tabloları GUI ile oluşturmak yerine SQ*L* * kullanarak oluşturuyorsan, zorlamaz. Komutlar üç aşağı beş yukarı aynı. Dökümanları online da var. Takıldığın yerde AI'ı da döküman için kullanabilirsin.

O kadar karışık değil. Programı çalıştıran herkesin ona bağlanabilmesi lazım. Genelde uzak bir sunucuda, bir tane db oluşturursun sonrasında da uygulamadan bağlanırsın. En sağlıklı ve güvenli yöntem API ile bağlanmak olur sunucuya çünkü decompile ederek programı açık bakarlarsa bağlantı stringlerini görürler, onlarda bağlanabilir hale gelir. Ama senin durumunda bu tarz şeyler bence önemli değil. Daha küçük bir şey lazım sana, o yüzden SQLite yeterli diyorum.

Aşağı yukarı doğru düşünüyorsun ama eksik düşünüyorsun. Eksik olduğun için doğru desem daha mantıklı olur.

Şimdi, sen sadece local ortamda server ile geliştirme yaptın şimdiye kadar, bu yüzden cloud ile bağlantı hakkında bir fikrin yok, ve bu yüzden programı taşıdığın her bilgisayarın local bağlanacağı fikrindesin. Bundan kaynaklı olarak da zor olacağını düşünüyorsun ve böyle kurulum yapsan sürekli, evet zor olacak.

Ancak MySQL/MsSQL gibi şeyleri en başından local kullanmıyoruz zaten. Bir sunucu oluyor ve bu sunucuya bağlanıyoruz. Böylece programı kuran herkes, program aracılığıyla o sunucuya bağlanıp işini görebiliyor. Sunucuya bağlanmak için de onlar bir ayar yapmak zorunda kalmıyor. Kur çalıştır yetiyor yani.

Şimdi senin durumunda lazım olan şey, eğer internet gerektiren özellikler olmayacaksa (senkronizasyon vs.) SQLite yeterli sunucusuz. Kullanımına dair internette rehber bulursun. Dikkat et kuracağın SQLite librarysi Cross-platform olsun. (Official library cross paltform mu değilim. Sonuçta dosya manipülasyonu söz konusu ve Windows dosya işlemleri methodlarına göre yazıldıysa başını ağrıtabilir MacOS'de vs.)

SQLite'ta sunucu servisi yok. Onun yerine direkt dosya okuyup yazıyorsun. Yine de komutlar MSSQL vs ile daha önce de dediğim gibi üç aşağı beş yukarı aynı. SELECT id, name FROM users WHERE id = '{uid}' şeklinde veri çekiyorsun mesela.

.NET MAUI mevzusunda da, XAML kullanıyor designda ve MVVM patterniyle kullanman gerekiyor. Avalonia UI'da öyle. Alışması sürer biraz ama çok zor değil. AvaloniaUI tavsiye ederim bu arada.

*: SQL dediğimiz şeyin kendisi bir dil. Structured Query Language. MsSQL, MySQL, SQLite vs ise bu dil yapısını kullanan veri tabanı servisleri.

Çok uzun yazdım, bir yerde gözden kaçırdığım eksik yazdığım bir şey olabilir. Aklıma gelirse eklerim.
Gerçekten çok teşekkür ederim. Kafamda ki birçok soruya cevap oldunuz.


Zamanında Proje Teklif Formu doldurduk, ne yapacağımızı kısaca anlattık hangi SQL programını kullanacağımızı vs. ve ben oraya Microsoft SQL Server demiştim. Yarın da yani ayın 26'sında da veritabanından birkaç görsel paylaşmam gerekiyor. Ödevimiz aşama aşama gidiyor ve aşama aşama bilgi veriyoruz hocaya. Her aşamada +puan veriyor bizlere. Yani yarın veritabanımdan birkaç görsel paylaşacağım hoca ile.

Ben şuan da Microsoft SQL Server kullanıyorum ve tablolarımın oluşmasını büyük ölçüde tamamladım. Şuan da tabloların içeriklerini dolduruyorum.

Size bir soru soracağım:

Ben Microsoft SQL Server ile veri tabanımı oluşturup bitirsem(en azından ödev teslimimi yapana kadar) sonrasında bu veri tabanını herhangi bir SQL programına aktarabilir miyim? SQLite'a aktarabilir miyim mesela? ChatGPT'ye sorduğumda evet aktarabilirsin dedi ama size de sormak istedim.

Ekstra olarak eklemek istiyorum: SQL dediğimiz şeyin bir dil olduğunu biliyorum ve bu yüzden de diğer SQL programlarında alışma sürecinde sıkıntı yaşamayacağımı düşünüyorum doğru mu düşünüyorum? Bu konu hakkında yorum yapmışsınız ama tam net anlayamadım, daha doğrusu anladım ama teyit etmek için soruyorum.
Microsoft SQL Server'de hiçbir işi(Tablo oluşturmak, tabloya veri ekleme vs.) manuel olarak, tıklayarak yapmıyorum. Tüm işleri query'ler ile yapıyorum ve yapmak için çaba sarfediyorum. Bir yerde takılırsam kolaya kaçmayıp, ChatGPT'den yardım alıp kendim query yazarak yapıyorum işlemleri. Yani ezberlemeye değil de öğrenmeye çalışıyorum bu sorgu dilini. Ondan dolayı da program değiştirdiğimde alışma sürecinde çok sıkıntı yaşamayacağımı düşünüyorum. Dediğiniz gibi çok ufak tefek farklılıklar olur sanırım.


Dediğim gibi merak ettiğim şey; Ben veri tabanımı Microsoft SQL Server üzerinden oluştursam daha sonradan SQLite'a bu veri tabanını eksiksiz bir şekilde aktarabilir miyim?

Şuan da hiç Visual Studio'ya giriş yapmadım bu arada. Henüz program oluşturmaya başlamadım, veri tabanı oluşturuyorum. Programın arayüzünü oluşturmak vs. gözümü pek korkutmuyor. İşin kolay kısmı orası diye düşünüyorum, umarım yanılmıyorumdur.
 
Ben Microsoft SQL Server ile veri tabanımı oluşturup bitirsem(en azından ödev teslimimi yapana kadar) sonrasında bu veri tabanını herhangi bir SQL programına aktarabilir miyim? SQLite'a aktarabilir miyim mesela? ChatGPT'ye sorduğumda evet aktarabilirsin dedi ama size de sormak istedim.
Aktarabilirsin ama birazcık uğraşman gerekir.
Ekstra olarak eklemek istiyorum: SQL dediğimiz şeyin bir dil olduğunu biliyorum ve bu yüzden de diğer SQL programlarında alışma sürecinde sıkıntı yaşamayacağımı düşünüyorum doğru mu düşünüyorum? Bu konu hakkında yorum yapmışsınız ama tam net anlayamadım, daha doğrusu anladım ama teyit etmek için soruyorum.
Evet. Rahat alışırsın.
Şuan da hiç Visual Studio'ya giriş yapmadım bu arada. Henüz program oluşturmaya başlamadım, veri tabanı oluşturuyorum. Programın arayüzünü oluşturmak vs. gözümü pek korkutmuyor. İşin kolay kısmı orası diye düşünüyorum, umarım yanılmıyorumdur.
Ödevi formu verdiğin şekilde kendi bilgisayarında çalışacak şekilde yap, teslim et. Daha sonrasında cross-platform için gerekli değişiklikleri yaparsın.
 
Ödevi formu verdiğin şekilde kendi bilgisayarında çalışacak şekilde yap, teslim et. Daha sonrasında cross-platform için gerekli değişiklikleri yaparsın.
Evet benim de aklıma bu şekilde yattı açıkçası. Tekrardan ilginiz için teşekkür ederim. Başka sorum yok..
 
OS agnostik uygulamalar gelistireceksen bir defa kafadan Microsoft teknolojilerine skeptik yaklasacaksin.

Ikincisi client a DB kurulmaz. DB ya remote olur ya da client ta cache lenir.

Basit bir dosya sistemi, Couchbase lite ya da sqlite3 gibi client tarafta calisan lightweight alternatifleri dusunebilirsin.

Update etmek de problem. Yarin yeni bir ozellik istendiginde ya da bugfix yapacaginda elinde usb stick dayinin yolunu tutmaman da gerekiyor.

Okuldaki hocalar c# mssql surukle birak forms disinda teknoloji bilmedigi icin boyle oluyor biraz da.

Sana verebilecegim en iyi tavsiye sistemi web uzerinden dizayn etmen. Browser olan her cihazdan erisilebilir, update ve compatibility sorununu kafadan elemis olursun. Odev db kullanan proje gelistirmekse eger web buna aykiri degil.

Once odev icin gerektigi kadar yaparsin, sonra ustune koyar dayina kullandirirsin. Belki cok hosuna giderse biraz daha profesyonellestirip SaaS yaparsin.
 
OS agnostik uygulamalar gelistireceksen bir defa kafadan Microsoft teknolojilerine skeptik yaklasacaksin.

Ikincisi client a DB kurulmaz. DB ya remote olur ya da client ta cache lenir.

Basit bir dosya sistemi, Couchbase lite ya da sqlite3 gibi client tarafta calisan lightweight alternatifleri dusunebilirsin.

Update etmek de problem. Yarin yeni bir ozellik istendiginde ya da bugfix yapacaginda elinde usb stick dayinin yolunu tutmaman da gerekiyor.

Okuldaki hocalar c# mssql surukle birak forms disinda teknoloji bilmedigi icin boyle oluyor biraz da.

Sana verebilecegim en iyi tavsiye sistemi web uzerinden dizayn etmen. Browser olan her cihazdan erisilebilir, update ve compatibility sorununu kafadan elemis olursun. Odev db kullanan proje gelistirmekse eger web buna aykiri degil.

Once odev icin gerektigi kadar yaparsin, sonra ustune koyar dayina kullandirirsin. Belki cok hosuna giderse biraz daha profesyonellestirip SaaS yaparsin.
Ödevim sadece hangi SQL ı kullanma konusunda bana seçim hakkı veriyor maalesef. Onun haricinde Visual Studio Windows Forms kullanmam zorunlu. Dediğiniz gibi en azından ödevi tamamlayana kadar bu yoldan devam edip sonrasında söylediğiniz şeylere kafa yorabilirim. Yani yapacağım program çok fazla profesyonel olmayacak zaten. Excelde tutulan bilgileri programda tutulmasını sağlayacağım ve Excel'e göre geçmiş bir bilgiye ulaşmayı, yeni bilgiler eklemeyi daha kolay, daha pratik hale getirmeye çalışacağım. Her bir veri deposu için ayrı ayrı Excel dosyaları tutmamasını sağlayacağım, hedefim bu yönde. Yani dayımın işini biraz pratiklestirmek aslında amacım. En azından bu projem için Visual Studio üzerinden devam etmek zorundayım. Sonrasında zaten şu işi mesleğim haline getirebilirsem sonrasında dediğiniz o işlerle bol bol uğraşmak istiyorum. Her ne kadar şuan bile pek beceremiyor olsam da uğraşırken inanılmaz bir keyif alıyorum.
 
Ödevim sadece hangi SQL ı kullanma konusunda bana seçim hakkı veriyor maalesef. Onun haricinde Visual Studio Windows Forms kullanmam zorunlu. Dediğiniz gibi en azından ödevi tamamlayana kadar bu yoldan devam edip sonrasında söylediğiniz şeylere kafa yorabilirim. Yani yapacağım program çok fazla profesyonel olmayacak zaten. Excelde tutulan bilgileri programda tutulmasını sağlayacağım ve Excel'e göre geçmiş bir bilgiye ulaşmayı, yeni bilgiler eklemeyi daha kolay, daha pratik hale getirmeye çalışacağım. Her bir veri deposu için ayrı ayrı Excel dosyaları tutmamasını sağlayacağım, hedefim bu yönde. Yani dayımın işini biraz pratiklestirmek aslında amacım. En azından bu projem için Visual Studio üzerinden devam etmek zorundayım. Sonrasında zaten şu işi mesleğim haline getirebilirsem sonrasında dediğiniz o işlerle bol bol uğraşmak istiyorum. Her ne kadar şuan bile pek beceremiyor olsam da uğraşırken inanılmaz bir keyif alıyorum.
Merhaba, diğer arkadaşlar kadar bilgili olmasam da ufak bir tavsiye vermek istedim. Ödev işini hallettikten sonra programı cross-platform işlevsel bir hale getirmek o kadar zor değil. Avalonia UI programın için daha uygun gözükse de bence internette yeterince kaynak yok, başlangıç dostu değil. .NET MAUI'da ise MVVM yerine MVC kullanırsan kodunu çok basit bir şekilde kopyala yapıştır yapıp, belki ufak değişiklerle kullanabilirsin. GUI programlamaya yöneleceksen tabi MVVM de öğren de ilk etapta MVC'yle başlarsan daha rahat edersin. Küçük çaplı uygulamalarda daha verimli. Sadece XAML öğrenmek biraz uğraştırabilir. O da zaten masaüstünde düzgün GUI yapmak istiyorsan kesin bilmen gereken bir dil. C#'la mobil geliştirme için de aynı şekilde.
 

Geri
Yukarı