Matn shablonini o'zgartirish vositasi - Text Template Transformation Toolkit

Matn shablonini o'zgartirish vositasi (T4)
Asl muallif (lar)Novell, Xamarin, Microsoft
Dastlabki chiqarilish2005; 15 yil oldin (2005)
Barqaror chiqish
v2.0.5 / 2019 yil 13-iyun; 17 oy oldin (2019-06-13)[1]
Omborgithub.com/ mono/ t4
YozilganC #
Operatsion tizimLinux, Windows
Platforma.NET Framework,
.NET Core
TuriDastur doirasi
LitsenziyaMIT litsenziyasi
Veb-saytKod yaratish va T4 matn shablonlari

Matn shablonini o'zgartirish vositasi (odatda "T4" deb nomlanadi) a bepul va ochiq manbali shablonga asoslangan matn yaratish doirasi. T4 manba fayllari odatda ".tt" fayl kengaytmasi bilan belgilanadi.

Umumiy nuqtai

T4 tomonidan ishlatiladi ishlab chiquvchilar dastur yoki vositaning bir qismi sifatida ramka turli xil parametrlarga ega bo'lgan matnli fayllarni yaratishni avtomatlashtirish. Ushbu matnli fayllar oxir-oqibat kod kabi har qanday matn formati bo'lishi mumkin (masalan.) C # ), XML, HTML yoki XAML.

T4 .NET kodi va o'z ichiga olishi mumkin bo'lgan maxsus shablon formatidan foydalanadi torli harflar unda T4 buyruq satri vositasi tomonidan .NET kodiga ajratilgan, kompilyatsiya qilingan va bajarilgan. Bajarilgan kodning natijasi shablon tomonidan yaratilgan matnli fayl hisoblanadi.[2] T4 ni ham TextTransformation sinfidan foydalanib .NET dasturlari ichida to'liq ishlatish mumkin, bu esa oxirgi foydalanuvchiga Visual Studio dasturini o'rnatishni talab qilmaydi.

T4 Microsoft-ning ichida ishlatiladi ASP.NET MVC ko'rinishlar va tekshirgichlarni yaratish uchun, ADO.NET Entity Framework shaxsni yaratish uchun va ASP.NET dinamik ma'lumotlari.[3] Bundan tashqari, Microsoft-dan tashqarida SubSonic kabi loyihalarda qo'llaniladi.[4]

T4 shablonini qo'llab-quvvatlaydi Visual Studio, MonoDevelop va JetBrains Rider.[5]

Boshqaruv elementlari

T4 shablonni o'zgartirish mexanizmi tomonidan boshqariladigan to'rtta boshqaruv turi mavjud.

IsmSintaksisTavsif
Direktivalar<#@ ... #>Transformatsiya dvigatelining ko'rsatmalari
Standart boshqaruv bloklari<# ... #>Amalga oshiriladigan kod (masalan, ko'chadan)
Ifodalarni boshqarish bloklari<#= ... #>Ifodalar baholandi va mag'lubiyatga aylantirildi
Sinf xususiyatlarini boshqarish bloklari<#+ ... #>Sinf va funktsiya ta'riflari

Tanqid

Microsoft ko'pincha tanqidga uchragan[kim tomonidan? ] Visual Studio IDE-da T4 uchun asboblarni qo'llab-quvvatlashning etishmasligi va uchinchi tomonlarga bog'liq Moddiy muhandislik va Clarius Consulting,[6] ammo keyinchalik qayta ko'rib chiqishda asboblarni qo'llab-quvvatlash yaxshiroq bo'ldi.[7]

Tarix

  • 2005 yil: Microsoft Visual Studio 2005 uchun T4 versiyasining birinchi versiyasini chiqardi
  • 2008 yil: Microsoft uni Visual Studio 2008 bilan o'z ichiga oladi
  • 2010 yil: Microsoft uni Visual Studio 2010-ga qo'shib qo'ydi, unda ishlashni yaxshilash, shablon mualliflari va asbob ishlab chiqaruvchilar uchun qulaylik va Visual Studio-ning DSL vositalariga yaxshi integratsiya qilish uchun yangi xususiyatlar mavjud.[7]
  • 2015: Visual Studio 2015 Update 2 C # versiyasi 6.0 xususiyatlaridan foydalanishi mumkin [8]
  • 2017: Dvigatelning ochiq manba versiyasi qo'llab-quvvatlanadi .NET Core [9]
  • 2019: JetBrains Rider-da T4-ni qo'llab-quvvatlaydi [10]

Shuningdek qarang

Adabiyotlar

  1. ^ "Teglar · mono / t4 · GitHub". GitHub T4 ombori. Olingan 2020-01-06.
  2. ^ Veb shablonlari (2013), Veb-sayt shablonlari, Veb-sayt shablonlari Janubiy Afrika, ISBN  978-1-4251-3374-0, olingan 19 noyabr 2013
  3. ^ "T4 andozalari va dinamik ma'lumotlar bilan qiziqarli - burchakli qavsning foizlari - sayt sahifasi - MSDN bloglari". Blogs.msdn.com. 2008-11-26. Olingan 2012-05-17.
  4. ^ "SubSonic v3's T4 Andoza" Kundalik tsikl ". Gcapnias.wordpress.com. 2009-01-12. Olingan 2012-05-17.
  5. ^ https://www.jetbrains.com/rider/
  6. ^ Sych, Oleg (2007-12-22). "T4: Matn shablonini o'zgartirish vositasi". Oleg Sych. Olingan 2012-05-17.
  7. ^ a b "Visual Studio 2010-dagi T4-dagi yangiliklar - [chuqur ezoterik rasm] - sayt sahifasi - MSDN-ning bloglari". Blogs.msdn.com. 2010-04-15. Olingan 2012-05-17.
  8. ^ https://docs.microsoft.com/en-us/visualstudio/modeling/code-generation-and-t4-text-templates
  9. ^ https://github.com/mono/t4
  10. ^ https://github.com/jetbrains/fortea

Tashqi havolalar