I'm new to Umbraco. I have experience with XSLT, but I don't care for it all. I don't mind XML or XPATH, but I find XSLT to be very clumsy as a language.
I've implemented my first Umbraco site. To do so, I used .Net server controls and the API (both for my templates and for macros). I did not use any XSLT.
So, my question is this --
What will I miss by avoiding XSLT? If there functionality that's only available in the XSLT layer that I won't be able to do with server controls and the API? My first site seemed to go fine, but I just want to make sure I'm not painting myself into a corner by doing everything without XSLT.
To the best of my knowledge, there's nothing you can only do with XSLT, and if you don't know (or care to learn) the language, you should go with the ones you already know. Do check out the new Razor stuff - the learning curve should be pretty simple if you're familiar with C# already.
If you don't care for XSLT that's ok. You can do without it. Specially with Razor around now. That's the beauty of Umbraco - It is flexible on many levels allowing people to fetch and manipulate data in a way that makes sense to them.
Many backend developers don't like XSLT and the debates on whether to use XSLT or not can get VERY religious sometimes. But fortunately it's not about religion but about how you can be productive. The XSLT approach primarily makes sense for frontend developers while most backend developers would probably prefer Razor or Linq2Umbraco or Python or whatever rocks their boat to move forward with their projects.
I don't think there is something that can't be done by using some of the other ways to manipulate and represent data that can't be done without XSLT. But sometimes it will probably be worth considering, which approach is the best the achieve the job. And maybe XSLT will in some cases turn out to be the best fit. But it's entirely your call and if you don't see any reason to use it you can do without it - no force :-)
One thing I would argue that you're missing out on is rapid development. If you're a little familiar with either XSLT or Razor, you'll be able to just code what you need, refresh the page and see the result. No more builds, having to wait for the app pool to restart, configuring afterbuild copying, etc.
Also, if you were planning on becoming a certified developer, you will be shown to use XSLT and Razor in the near future, so you'd have a bit of an easier time following along if it's not all new to you.
I forgot to add, if you need to actually output some XML instead of HTML in your page, then it is (IMHO) much easier to write some XSLT instead of creating XML in C#.
What will I miss if I don't use XSLT?
I'm new to Umbraco. I have experience with XSLT, but I don't care for it all. I don't mind XML or XPATH, but I find XSLT to be very clumsy as a language.
I've implemented my first Umbraco site. To do so, I used .Net server controls and the API (both for my templates and for macros). I did not use any XSLT.
So, my question is this --
What will I miss by avoiding XSLT? If there functionality that's only available in the XSLT layer that I won't be able to do with server controls and the API? My first site seemed to go fine, but I just want to make sure I'm not painting myself into a corner by doing everything without XSLT.
Hi Deane,
To the best of my knowledge, there's nothing you can only do with XSLT, and if you don't know (or care to learn) the language, you should go with the ones you already know. Do check out the new Razor stuff - the learning curve should be pretty simple if you're familiar with C# already.
Me? I'm 100% XSLT all the way :-)
/Chriztian
Hi Deane
+1 for what Chriztian has written.
If you don't care for XSLT that's ok. You can do without it. Specially with Razor around now. That's the beauty of Umbraco - It is flexible on many levels allowing people to fetch and manipulate data in a way that makes sense to them.
Many backend developers don't like XSLT and the debates on whether to use XSLT or not can get VERY religious sometimes. But fortunately it's not about religion but about how you can be productive. The XSLT approach primarily makes sense for frontend developers while most backend developers would probably prefer Razor or Linq2Umbraco or Python or whatever rocks their boat to move forward with their projects.
I don't think there is something that can't be done by using some of the other ways to manipulate and represent data that can't be done without XSLT. But sometimes it will probably be worth considering, which approach is the best the achieve the job. And maybe XSLT will in some cases turn out to be the best fit. But it's entirely your call and if you don't see any reason to use it you can do without it - no force :-)
/Jan
One thing I would argue that you're missing out on is rapid development. If you're a little familiar with either XSLT or Razor, you'll be able to just code what you need, refresh the page and see the result. No more builds, having to wait for the app pool to restart, configuring afterbuild copying, etc.
Also, if you were planning on becoming a certified developer, you will be shown to use XSLT and Razor in the near future, so you'd have a bit of an easier time following along if it's not all new to you.
I forgot to add, if you need to actually output some XML instead of HTML in your page, then it is (IMHO) much easier to write some XSLT instead of creating XML in C#.
Thanks for the replies. To each his own -- options are good.
is working on a reply...