A web component is much more than JavaScript…

Modern Client-Side Component Development
Keine Kommentare

“There have been many attempts to come up with some sort of client-side package manager, and some of them do it very well, however I think they are missing the big picture; a ‘component’ is much more than just JavaScript.” — TJ Holowaychuk

One of the hotter debates in web development as of late revolves around the notion of packaging and sharing reusable components. You may have noticed that many segments of the web development community have stepped up in order to attempt to solve this problem. Interestingly, if you hang around in multiple parts of the community, you’ve probably noticed that there are many solutions being proposed and developed. Unfortunately, these solutions have overlapping and incompatible feature sets, leaving us with a manual integration headache. Don’t get me wrong, there are talented developers working on this problem and I commend their efforts; however, virtually all of them miss a critical detail…

A [web] “component” is much more than just JavaScript

I’m sure there are lots of stories floating around as to which JavaScript package management solution is the best. Perhaps you’ve heard of and even use Twitter’s Bower [1] or James Burke’s Volo [2] or Caolan McMahon’s Jam [6]. As with most of Twitter’s [7] open source projects, Bower happens to be the most popular of the lot. This is no surprise given the impressive list of people behind the project [8]. For example, @fat (Jacob Thornton) [11], @addyosmani (Addy Osmani) [12], and @paulirish (Paul Irish) [13].

About two years ago, I started looking for the “best client-side script loader”. I even entertained the thought, “perhaps I’ll just write one myself” (famous last words). About a year ago, I started digging further into NodeJS…that is when it all came together and I realized that I should be looking for a client-side “module loader”. You know, npm [14] for the browser. Little did I know that there was already Ender [15] and Browserify [16] in existence. Oh wait, what about that Asset Pipeline [17] thing or Assetic [18]? Yes, I frantically tried most of these solutions; and I even wrote about my short list of contenders (http://git.io/_ZWfVA) [9].

To a large degree, I continued to “miss the point”. Fortunately, a very talented [19] lad by the name of TJ Holowaychuk (http://github.com/visionmedia) [20] set me straight [21]. He reminded me “A [web] ‘component’ is much more than just JavaScript…A ‘component’ can be JavaScript, CSS, images, fonts, and more.” The Morale of the story is, “Create components, not [only] JavaScript packages”.


Unsere Redaktion empfiehlt:

Relevante Beiträge

Benachrichtige mich bei
Inline Feedbacks
View all comments
- Gib Deinen Standort ein -
- or -