Visual Studio: nədir və mobil tətbiqləri necə hazırlamaq olar

Müəllif: IT Sectr Dərc olunub: 2026-02-12 Oxuma vaxtı: 10 dəq

Visual Studio — Microsoft-un mobil tətbiqlərin Xamarin və .NET MAUI vasitəsilə yaradılmasını dəstəkləyən inteqrasiya olunmuş inkişaf mühiti. IDE C#/F#/VB.NET redaktoru, debugger, profiler, XAML dizayneri, Android/iOS emulyatorları və Azure DevOps ilə inteqrasiyanı əhatə edir. Microsoft.com saytında Visual Studio — Community, Professional və Enterprise nəşrləri üçün portal.

Əsas məqamlar

  • Visual Studio — Xamarin və .NET MAUI vasitəsilə platformalararası mobil inkişaf üçün Microsoft IDE-si
  • .NET MAUI — Android, iOS, Windows və macOS üçün vahid layihə ilə Xamarin.Forms-un varisi
  • XAML Hot Reload — yenidən qurmadan işləyən tətbiqdə UI-nın real vaxtda dəyişdirilməsi
  • iOS Remote Simulator — Mac build host-a qoşulmaqla Visual Studio-dan iOS tətbiqlərinin işə salınması
  • IntelliCode — kontekst və best practices əsasında C# avtomatik tamamlama üçün AI köməkçisi

Visual Studio nədir?

Visual Studio — 1997-ci ildə buraxılmış Microsoft-un flaqman IDE-si. Mobil inkişaf üçün Visual Studio iki əsas freymvork təqdim edir: Xamarin (köhnə, 2028-ə qədər dəstək) və .NET MAUI (aktual, 2021-ci ildə .NET 6-dan başlayaraq). IDE Community (kiçik komandalar üçün pulsuz), Professional və Enterprise nəşrlərində mövcuddur.

Cari versiya — Visual Studio 2025 (v18.0) .NET 10 SDK ilə. IDE bütün platformaları dəstəkləyir: Android (emulyator + fiziki cihazlar), iOS (Mac build host vasitəsilə), Windows (yerli debug), macOS (Parallels və ya Mac Agent vasitəsilə). Stack Overflow 2025 məlumatlarına görə, Visual Studio .NET yığını ilə işləyən mobil tərtibatçıların 32%-i tərəfindən istifadə olunur.

VS Mobile-nin əsas xüsusiyyətləri: SDK-stilli (MSBuild) .sln/.csproj formatında layihələr, NuGet vasitəsilə paket idarəetməsi, UI-nın vizual redaktəsi üçün XAML Designer, IntelliCode (GPT-4 əsaslı AI kod tamamlama), uzaqdan cütlükdə inkişaf üçün Live Share.

.NET MAUI: arxitektura və layihə

.NET MAUI (Multi-platform App UI) — vahid C# kod bazasından yerli UI-lar yaratmaq üçün Microsoft freymvorku. Xamarin.Forms-dan fərqli olaraq, MAUI bütün platformalar üçün ayrı Android/iOS layihələri deyil, vahid layihə (single project) istifadə edir. Resurslar Platforms/Android, Platforms/iOS, Platforms/Windows qovluqlarına yerləşdirilir.

xml
<!-- MainPage.xaml — .NET MAUI UI —>
<ContentPage xmlns="http://schemas.microsoft.com/dotnet/2021/maui"
             xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
             x:Class="MyApp.MainPage">
    <VerticalStackLayout Spacing="12" Padding="16">
        <Label Text="Hello, .NET MAUI!"
               FontSize="24"
               HorizontalOptions="Center" />
        <Button Text="Load Data"
                Clicked="OnLoadClicked"
                BackgroundColor="#512BD4" />
        <CollectionView x:Name="ItemsList" />
    </VerticalStackLayout>
</ContentPage>

MAUI-da MVVM və DI: freymvork daxili DI konteyneri (Microsoft.Extensions.DependencyInjection), naviqasiya üçün Shell (TabBar, Flyout, Routing) və INotifyPropertyChanged generasiyası üçün CommunityToolkit.Mvvm ehtiva edir. BindableLayout BindableLayout.ItemsSource vasitəsilə qeyri-ItemsView elementlərinə məlumat bağlamasını dəstəkləyir.

csharp
// MainPage.xaml.cs — DI ilə code-behind
public partial class MainPage : ContentPage
{
    private readonly IApiService _api;
    
    public MainPage(IApiService api)
    {
        InitializeComponent();
        _api = api;
    }
    
    private async void OnLoadClicked(object sender, EventArgs e)
    {
        var items = await _api.GetItemsAsync();
        ItemsList.ItemsSource = items;
    }
}

Xamarin.Essentials → MAUI Essentials: yerli API-lərə giriş: geolokasiya, akselerometr, fayl sistemi, təhlükəsiz saxlama (SecureStorage), biometriya, vibrasiya, Make Phone Call. API-lər ümumi C# kodundan çağırılır — MAUI onları Android (Java/Kotlin bindings) və iOS (Objective-C/Swift bindings) üçün tərcümə edir.

Xamarin: köhnə layihələr və Forms

Xamarin — 2011-ci ildə buraxılmış və 2016-cı ildə Microsoft tərəfindən satın alınmış .NET MAUI-nin sələfi. Xamarin ayrı layihələrdən istifadə edir: Xamarin.Android (C# + Android bindings), Xamarin.iOS (C# + iOS bindings) və Xamarin.Forms (XAML vasitəsilə ümumi UI). Microsoft 2023-cü ildə Xamarin SDK-nı köhnəlmiş elan etdi, lakin dəstək 2028-ci ilin mayına qədər davam edir.

Xamarin-dən MAUI-ya miqrasiya — .NET Upgrade Assistant vasitəsilə avtomatlaşdırılmış proses. Əsas dəyişikliklər: köhnə stil əvəzinə SDK-stilli .csproj, ayrı layihələr əvəzinə vahid layihə, NavigationPage əvəzinə Shell, UWP əvəzinə WinUI. Microsoft Xamarin.Forms → .NET MAUI üçün addım-addım təlimatlar və uyğunluq analizatoru ilə miqrasiya bələdçisi təqdim edir.

Xamarin.Android vs Xamarin.iOS arxitektura baxımından fərqlənir: Xamarin.Android Java kodunu çağırmaq üçün JNI Bridge-dən istifadə edir, Xamarin.iOS isə C#-ı yerli ARM-ə Ahead-of-Time (AOT) kompilasiyası edir. Xamarin.iOS JIT-i dəstəkləmir — iOS üçün bütün tətbiqlər Apple-ın məhdudiyyətləri səbəbindən AOT kompilasiyasından keçir.

XAML Designer və Hot Reload

Visual Studio-da XAML Designer — Toolbox paneli (komponentlər), Properties (seçilmiş elementin xassələri) və Document Outline (element ağacı) ilə XAML interfeyslərinin vizual redaktoru. Designer Data Binding ön baxışını (dizayn vaxtı məlumatları üçün d:DataContext) və müxtəlif mövzuları dəstəkləyir.

XAML Hot Reload — tətbiqi dayandırmadan XAML kodunun dəyişdirilməsi. Hot Reload işləyən emulyator və ya cihazda UI-nı bir saniyə ərzində yeniləyir. Visual Studio 2025-də Hot Reload bütün MAUI elementlərini dəstəkləyir: ContentPage, ContentView, ResourceDictionary, Styles, DataTemplates. C# code-behind üçün .NET Hot Reload mövcuddur (yenidən başlatmadan metodların dəyişdirilməsi).

Live Visual Tree — işləyən UI-nın inspektoru: elementlərin iyerarxiyasını, xassələrini və cari vəziyyətini göstərir. Hot Reload ilə birlikdə Live Visual Tree elementlərin xassələrini runtime-da dəyişməyə və nəticəni dərhal cihaz ekranında görməyə imkan verir.

Mac build host vasitəsilə iOS qurulması

Visual Studio-da iOS inkişafı Mac build host-a — Xcode və Apple SDK olan macOS kompüterinə qoşulma tələb edir. Visual Studio SSH vasitəsilə Mac Agent-ə qoşulur, mənbə kodunu göndərir, Mac iOS ikili faylını kompilə edir və nəticəni qaytarır. Mac build host olmadan Visual Studio-da iOS layihələrinin hətta kompilasiyası belə mümkün deyil.

Mac build host-un qurulması: macOS-da Xcode və Visual Studio for Mac Agent-in quraşdırılması, System Settings-də Remote Login-in aktivləşdirilməsi, Visual Studio-da Tools → iOS → Pair to Mac vasitəsilə cütləşdirmə. Bulud qurmaları üçün MacStadium və ya MacinCloud istifadə edilə bilər. Microsoft Azure Pipelines da macOS hosted agent-lərini dəstəkləyir.

Visual Studio-dan iOS Simulator Mac-da işə salınır və Remote Simulator vasitəsilə Windows-a ötürülür. Visual Studio 2025 iOS emulyatorunu birbaşa Windows iş masasında göstərmək üçün Mac-da Xcode 16 Simulator-dan istifadə edir.

Visual Studio-da Android üçün alətlər

Visual Studio-da Android SDK Manager Android SDK, build-tools, platformalar (API 34, 35, 36) və emulyator sistem şəkillərinin quraşdırılmasını idarə edir. Visual Studio Android layihəsi ilk dəfə açıldıqda lazımi komponentləri avtomatik endirir. Alternativ olaraq quraşdırılmış Android Studio SDK-dan istifadə etmək olar.

Android Emulator Visual Studio-ya daxildir: Debug → Start Without Debugging menyusundan emulyatorun işə salınması, siyahıdan AVD seçimi, fasilə nöqtələri ilə debug, Android Profiler vasitəsilə profilləşdirmə. Visual Studio emulyasiyanı sürətləndirmək üçün Hyper-V (Windows 11) və WSL2-ni dəstəkləyir. Android Debug Bridge (ADB) Developer PowerShell əmr sətri vasitəsilə əlçatandır.

Google Play Services NuGet vasitəsilə qoşulur (Xamarin.GooglePlayServices.* və ya MAUI.GooglePlayServices.*). Visual Studio Firebase və Maps üçün Google Services JSON/XML-i avtomatik konfiqurasiya edir. IntelliCode layihənizin .NET TFM-nə əsasən düzgün using direktivlərini və paket versiyalarını təklif edir.

Tez-tez verilən suallar

.NET MAUI Xamarin.Forms-dan nə ilə fərqlənir?

.NET MAUI — vahid layihə (single project), daxili DI, Shell, WinUI dəstəyi və müasir SDK-stilli .csproj ilə Xamarin.Forms-un təkamülüdür. Xamarin.Forms hər platforma üçün ayrı layihələr tələb edir və Windows 11-i yerli olaraq dəstəkləmir. MAUI həmçinin .NET 8/10 SDK sayəsində daha sürətli kompilə olunur.

Visual Studio-da Kotlin/Swift kodundan istifadə etmək olar?

Bəli, Native ReferencesBinding Projects vasitəsilə. Android üçün — Xamarin/MAUI Binding Library (.jar → .dll). iOS üçün — .xcframework → Static Library Binding. Kotlin/Swift kitabxanaları C# proksi-siniflərinə bükülür. .NET MAUI Platforms/Android/*.java və ya Platforms/iOS/*.swift qovluğu vasitəsilə platforma-spesifik kodu dəstəkləyir.

Xamarin layihəsini .NET MAUI-ya necə köçürmək olar?

Visual Studio-da .NET Upgrade Assistant istifadə edin: Project → Upgrade. Alət .csproj-ni, XAML namespace-lərini (Xamarin.Forms → MAUI) konvert edir, köhnəlmiş API-ləri əvəz edir. Ayrı Xamarin.Android/iOS layihələri üçün — əvvəlcə Xamarin.Forms-da birləşdirin, sonra miqrasiya edin. Microsoft orta layihə üçün tipik miqrasiyanı 2–4 həftə qiymətləndirir.

Visual Studio 2025 watchOS və tvOS altında inkişafı dəstəkləyir?

Bəli, .NET MAUI əlavə Target Framework Monikers (TFM) vasitəsilə watchOS və tvOS-u dəstəkləyir. watchOS üçün watchOS-uyğun elementlərlə (WKInterfaceLabel və s.) XAML-də işarələmə və Xcode-da tvOS/watchOS SDK ilə Mac build host-un məcburi olması tələb olunur.

C# mobil inkişafı üçün Visual Studio-ya hansı alternativlər var?

Əsas alternativlər: Visual Studio Code C# Dev Kit ilə (yüngül versiya, XAML Designer olmadan), JetBrains Rider (MAUI dəstəyi ilə platformalararası IDE), Rider + Unity (oyunlar üçün). Rider macOS-da .NET tərtibatçıları arasında populyardır, çünki Visual Studio for Mac 2025-ci ildə dayandırılıb.

Nəticələr

  • Visual Studio 2025 — .NET 10, IntelliCode və XAML Hot Reload ilə mobil inkişaf üçün Microsoft IDE-si
  • .NET MAUI — Shell naviqasiyası və DI ilə Android, iOS, Windows, macOS üçün vahid layihə
  • Xamarin — ayrı layihələri olan köhnə freymvork, 2028-ci ilə qədər dəstək
  • Mac build host — iOS qurulması üçün məcburidir, Xcode ilə macOS-a SSH vasitəsilə qoşulur
  • XAML Hot Reload — yenidən kompilə etmədən işləyən cihazda/emulyatorda UI-nın dəyişdirilməsi
  • IntelliCode — layihə konteksti və best practices əsasında AI C# avtomatik tamamlama
  • Google Play + Firebase Services — avtokonfiqurasiya ilə NuGet vasitəsilə inteqrasiya

Açar təslim mobil tətbiq hazırlayacağıq

IT Sectr 2017-ci ildən startaplar və bizneslər üçün iOS və Android tətbiqləri yaradır. Sizə məsləhət verəcəyik və ən yaxşı həlli təklif edəcəyik.

Layihəni müzakirə et

Həm də oxuyun