The academic environment is full of inovation and keeping the pace



Yüklə 263.83 Kb.
səhifə1/11
tarix20.02.2018
ölçüsü263.83 Kb.
  1   2   3   4   5   6   7   8   9   10   11





Abstract




The academic environment is full of inovation and keeping the pace
with that inovation is getting harder especially in the IT community
where new technologies apear every month.
Students often find themselves lost when learning the basics of
becoming a programmer. That is not always the case, there are those
that have a easier time learning and they can help others learn as well.
This paper explores the fundamental concepts and some of the new
frameworks available for building a system that allows teachers and student to
collaborate.

This work is the result of my own activity. I have
neither given nor received unauthorized assistance on this work.Cuprins

Abstract 1

Introducere 3

Capitolul 1. Concepte și șabloane care au influențat dezvoltarea aplicației 5

1.1 Domain Driven Design – Arhitectură dezvoltată pe baza domeniului 5

1.1.1 The Ubiquitous Language – limbajul universal 6

1.1.2 Layer architecture – arhitectură multistratificată 7

1.1.3 Entități 8

1.1.3 Obiecte Valori 9

1.1.4 Servicii 9

1.1.5 Module 10

1.1.6 Agregări 11

1.1.7 Factories 12

1.1.8 Repositories 12

1.2. Principiile S.O.L.I.D. 13

1.2.1. Single Responsability Principle - principiul responsabilităţii unice 13

1.2.2. Dependency Injection  13


1.2.3 Open Closed Principle 14

1.2.4 Liskov Substitution Principle 14

1.2.5 Interface Segregation Principle 14

1.3. Inversiune a controlului 15

1.4. Model View Controller 15

Capitolul 2. Motivația pentru alegerea platformelor și a limbajului 17

2.1 Aspecte generale ale platformei .NET 17

2.2 Aspecte ale limbajului C# 18

2.3 Aspecte ale tehnologiei ASP.NET, particularizat pentru ASP.NET MVC 20

2.4 Aspecte ale dezvoltării aplicațiilor web 22

2.5 Aspecte ale utilizării unui sistem de gestiune a bazelor de date obictuale 24

Capitolul 3. Librării implicate în dezvoltarea aplicației 26

3.1 Librăria StructureMap 26

3.2 Librăria Db4objects 28

3.3 Librăriile MvcContrib 30

3.4 Librăria FluentRegEx 30

3.5 Librăria Lucene.NET 30

3.6 Librăria BlueprintCss 31

3.7 Librăria JQuery 32

Capitolul 4. Arhitectura aplicației 34

34


4.1 Infrastructura 34

4.1.1 Configurații 34

4.1.2 Utilități 35

4.1.3 Persistență 35

4.2 Controlul aplicației 36

4.3 Modelul aplicației 36

4.3.1 Domeniul aplicației 36

4.3.2 Serviciile aplicației 37

4.4 Modulul de prezentare al aplicației 37

Capitolul 5. „Universum” 39

5.1 Rolurile utilizatorilor 39

5.1.1 Atribuțiile asociate utilizatorului cu rol de „super” 39

5.1.2 Atribuțiile asociate utilizatorului cu rol „anonymous” 39

5.1.3 Atribuțiile asociate utilizatorului cu rol „teacher” 40

5.1.4 Atribuțiile asociate utilizatorului cu rol „student” 40

5.2 Funcțiile aplicației 40

5.2.1 Crearea de resurse 40

5.2.2 Oferirea de feedback 40

5.2.3 Secțiunea „Home” 41

5.2.4 Secțiunea „Blogs” 41

5.2.5 Secțiunea „Question IT” 42

5.2.6 Secțiunea „Classes” 43

5.2.7 Secțiunea „My classes” 44

5.2.8 Căutarea informațiilor 44

Bibliografie 46




Introducere


Mediul universitar generează foarte multe articole și idei, este un mediu vibrant care în fiecare an aduce noutăți atât pentru profesori, dar mai ales pentru studenți. Încercarea de a echilibra și a satisface cerințele unui public larg sunt adeseori greu de realizat dacă nu chiar imposibile. Universitățile trebuie să iși readapteze resursele pentru a face față cererilor pieței și, în același timp, să pregătească materialele pentru o introducere cât mai rapidă și de profunzime pentru cei care vor trebui ca într-un timp scurt să se acomodeze cu noile cunoștințe și să se dovedească capabili de a aplica cu succes conceptele asimilate de-a lungul anilor de studiu.

Problemele sunt și mai accentuate într-un domeniu relativ nou și care se află într-o continuă schimbare și expansiune. Cu toate tehnologiile noi care apar în fiecare zi este destul de greu să te oprești din a învăța, iar pentru a învăța cu succes este nevoie de selectarea unor surse cât mai bine documentate.

Oricât de intimidantă ar putea părea imaginea pe care am descris-o, din nefericire este foarte adevărată. Din clasa a X-a am avut norocul, dacă pot să îi spun așa, de a alege limbajul C# ca să studiez ceea ce mi se părea chineză, POO - programarea orientată pe obiect. Ulterior am descoperit că limbajul este dezvoltat pe platforma .NET și că aceasta oferă o mulțime de librării pentru a ușura dezvoltarea aplicațiilor și a serviciilor.

În aproximativ 6 ani domeniul acesta împreună cu anumite direcții pe care mi-am concentrat studiul au suferit schimbări dramatice. Limbajul în sine a introdus foarte multe schimbări ajungând azi să se asemene din ce în ce mai mult cu un limbaj funcțional, dar păstrându-și proprietățile de limbaj static, orientat pe obiect și evident limitările impuse de modul în care a fost proiectat atât compilatorul, cât și sintaxa limbajului.

Pentru a face față la aceste schimbări atât în mediul academic, cât și în cel profesional, părerea mea este că e necesar un loc centralizat pe care comunitățile de profesori și de studenți să le poată accesa. Da, într-adevăr, Google® este prietenul nostru în găsirea unor soluții. Din păcate, calitatea rezultatelor și a soluțiilor nu este întotdeauna cea dorită.

Propunerea mea este simplă și presupune construirea unei comunități alcătuite din profesorii și studenții facultății. Calitatea materialelor este mai ușor de controlat în acest fel și promovează o structură de colaborare mult mai strânsă. Profesorii vor avea mereu materiale pe care le vor putea modifica și îmbunătății pe de o parte, pe de altă parte studenții își pot manifesta gândurile și ideile ei înșiși. Speranța mea e că vor fi auziți și că se vor implica din dorința de a se manifesta și de a le fi recunoscute vocile.

Ideea aceasta a rămas cu mine și s-a format într-un interval de timp destul de mare. Pe măsură ce cunoștințele tehnice pe care mi le-am însușit au crescut în număr, nevoia și dorința de a împărtăși acestea cu cei din jur a fost din ce în ce mai aprinsă. Un alt factor important era că aveam și încă mai am o grămadă de idei pe care aș vrea să le încerc și să obțin feedback de la cei din jur. Anumite concepte nu pot fi exprimate ușor și cel mai bine e să ai un set de persoane pe care să te bazezi că îți vor împărtăși părerile sau te vor ghida spre noi răspunsuri. Acest tip de feedback din nefericire nu l-am găsit în facultate, toată lumea pare oarecum asorbită de propriile eșecuri și succesuri și nu prea există o comunicare productivă între membri.

Un factor foarte important și relativ motivant pentru a dezvolta această idee este dorința de a ușura studenților, noi sau mai vechi, accesul la cunoștințele pe care unii le-am asimilat, altele nu le-am putut nici măcar înțelege. Există materii la care unii se descurcă pur și simplu mai ușor pentru că șabloanele pe care gândirea lor este formată se mapează mult mai ușor la conceptul prezentat. Important e să cunoști aceste persoane și să poți cere sfaturi.





Dostları ilə paylaş:
  1   2   3   4   5   6   7   8   9   10   11


Verilənlər bazası müəlliflik hüququ ilə müdafiə olunur ©muhaz.org 2017
rəhbərliyinə müraciət

    Ana səhifə