Component-based Scalable Logical Architecture
CSLA. NET એ રોકફોર્ડ લોટકા દ્વારા બનાવવામાં આવેલું એક સોફ્ટવેર માળખું છે જે વ્યવસાયિક વસ્તુઓનો ઉપયોગ કરીને મજબૂત ઓબ્જેક્ટ ઓરિએન્ટેડ પ્રોગ્રામ્સ બનાવવાની પ્રમાણભૂત રીત પ્રદાન કરે છે. વ્યવસાયિક પદાર્થો એ પદાર્થો છે જે ઉદ્દેશ્ય લક્ષી કાર્યક્રમમાં વ્યવસાયિક સંસ્થાઓને અમૂર્ત બનાવે છે. વ્યવસાયિક સંસ્થાઓના કેટલાક ઉદાહરણોમાં વેચાણ ઓર્ડર, કર્મચારીઓ અથવા ઇન્વૉઇસેસનો સમાવેશ થાય છે. જોકે સી. એસ. એલ. એ. પોતે ડાઉનલોડ કરવા માટે મુક્ત છે, નિર્માતા પ્રદાન કરે છે તે એકમાત્ર દસ્તાવેજો તેમના પુસ્તકો અને વીડિયો છે, જે મફત નથી. સી. એસ. એલ. એ. (કમ્પોનન્ટ-આધારિત સ્કેલેબલ લોજિકલ આર્કિટેક્ચર) મૂળરૂપે લોટકા દ્વારા વિઝ્યુઅલ બેઝિક 6 બિઝનેસ ઓબ્જેક્ટ્સ પુસ્તકમાં વિઝ્યુઅલ બેઝિક 6 તરફ લક્ષિત કરવામાં આવ્યું હતું. માઈક્રોસોફ્ટ ડોટ નેટના આગમન સાથે, સી. એસ. એલ. એ. ને સંપૂર્ણપણે ગ્રાઉન્ડ અપથી ફરીથી લખવામાં આવ્યું હતું, જેમાં કોઈ કોડ આગળ વધારવામાં આવ્યો ન હતો અને તેને સી. એસ. એલ. એ. ડોટ નેટ કહેવામાં આવ્યું હતું. આ પુનરાવર્તનમાં વેબ સેવાઓ અને માઈક્રોસોફ્ટ. નેટ (ખાસ કરીને, વિઝ્યુઅલ Basic.NET અને C #) સાથે આવતી ઓબ્જેક્ટ ઓરિએન્ટેડ ભાષાઓનો લાભ લેવામાં આવ્યો હતો. CSLA. NET ને એક્સપર્ટ સી #બિઝનેસ ઓબ્જેક્ટ્સ અને એક્સપર્ટ વન-ઓન-વન વિઝ્યુઅલ બેઝિક. NET બિઝનેસ ઓબ્જેક્ટ્સમાં સમજાવવામાં આવ્યું હતું, જે બંને લોટકા દ્વારા લખવામાં આવ્યા હતા. સી. એસ. એલ. એ. અને સી. એસ. એલ. એ. ડોટ નેટ મૂળરૂપે માઇક્રોસોફ્ટ પ્રોગ્રામિંગ ભાષાઓ તરફ લક્ષિત હોવા છતાં, મોટાભાગનું માળખું મોટાભાગની ઓબ્જેક્ટ લક્ષી ભાષાઓ પર લાગુ કરી શકાય છે. સી. એસ. એલ. એ. નેટ વિશેની વર્તમાન માહિતી લોટકાની સ્વ-પ્રકાશિત સી. એસ. એલ. એ. 4 ઈબુક શ્રેણી દ્વારા ઉપલબ્ધ છે. સી. એસ. એલ. એ. સ્માર્ટ ડેટાની વિશેષતાઓ એક વ્યવસાયિક ઓબ્જેક્ટ તે રજૂ કરે છે તે ઓબ્જેક્ટ સાથે સંકળાયેલ તમામ ડેટા અને વર્તન (વ્યવસાયિક તર્ક અને નિયમો) ને સમાવિષ્ટ કરે છે. ઉદાહરણ તરીકે, ઓર્ડરએડિટ ઓબ્જેક્ટમાં વપરાશકર્તાને ઓર્ડરની માહિતીને સંપાદિત કરવાની યોગ્ય મંજૂરી આપવા માટે એપ્લિકેશન માટે જરૂરી ડેટા અને વ્યવસાયના નિયમોનું અમલીકરણ હશે. સી. એસ. એલ. એ. ડોટ નેટ માળખું એક નિયમોનું એન્જિન પૂરું પાડે છે જે માન્યતા નિયમો, વ્યવસાય નિયમો અને અધિકૃતતાના નિયમોને ટેકો આપે છે. આ નિયમો ઑબ્જેક્ટ ઉદાહરણો અથવા ગુણધર્મો સાથે જોડાયેલા છે, અને જ્યારે જરૂરી હોય ત્યારે CSLA. NET દ્વારા આપમેળે બોલાવવામાં આવે છે. માન્યતા નિયમો સી. એસ. એલ. એ. ડોટ નેટ નિયમ એન્જિનનો ઉપયોગ કરીને અથવા માઈક્રોસોફ્ટ ડોટ નેટની ડેટા એનોટેશન્સ સુવિધાનો ઉપયોગ કરીને લાગુ કરી શકાય છે. ઓબ્જેક્ટ દ્રઢતા ડેટા બનાવટ, પુનઃપ્રાપ્તિ, સુધારાઓ અને કાઢી નાખવા (CRUD) ડેટા પરીક્ષણ સાથે સંકળાયેલ વ્યવસાયિક ઓબ્જેક્ટની સ્પષ્ટ રીતે વ્યાખ્યાયિત પદ્ધતિઓ દ્વારા કરવામાં આવે છે. સામાન્ય રીતે રીપોઝીટરી પેટર્ન અથવા અન્ય મુખ્ય પ્રવાહની ઓબ્જેક્ટ-ઓરિએન્ટેડ પ્રોગ્રામિંગ તકનીકોનો ઉપયોગ કરીને ડેટા એક્સેસ લોજિકને વ્યવસાયિક લોજિકથી સ્પષ્ટ રીતે અલગ કરવામાં આવે છે. મેટાસ્ટેટ જાળવણી CSLA. NET દરેક વ્યવસાયિક પદાર્થ વિશે મેટાસ્ટેટનું સંચાલન કરે છે. ઉદાહરણ તરીકે, દરેક બિઝનેસ ઓબ્જેક્ટ માહિતીને ટ્રેક કરે છે કે તે ક્યારે નવી છે (તે ડેટાને રજૂ કરે છે જે હજી સુધી સાચવવામાં આવ્યો નથી) અને જ્યારે તે ગંદા હોય છે (તેને ડેટાબેઝમાં સાચવવાની જરૂર છે કારણ કે તે નવો છે અથવા કારણ કે તેના સભ્યનો ડેટા છેલ્લે લોડ થયો ત્યારથી બદલવામાં આવ્યો છે). વ્યવસાયિક પદાર્થોને કાઢી નાખવા માટે પણ ચિહ્નિત કરી શકાય છે જેથી તેમને પછીથી કાઢી શકાય (ઉદાહરણ તરીકે જ્યારે વપરાશકર્તાએ પંક્તિઓને કાઢી નાખવાના તેના ઇરાદાની પુષ્ટિ કરતું બટન દબાવ્યું હોય.) એન-લેવલ પૂર્વવત્ કરો આ સુવિધા પદાર્થ અથવા પદાર્થોના સંગ્રહ માટે સ્થિતિઓનો સંગ્રહ જાળવવાનું શક્ય બનાવે છે. આ વસ્તુને સરળતાથી અગાઉની સ્થિતિમાં પાછા ફરવાની મંજૂરી આપે છે. જ્યારે વપરાશકર્તા એપ્લિકેશનમાં અગાઉના સંપાદનોને ઘણી વખત પૂર્વવત્ કરવા માંગે છે ત્યારે આ ઉપયોગી થઈ શકે છે. આ સુવિધા વપરાશકર્તાને અગાઉ પૂર્વવત્ કરવામાં આવેલા બહુવિધ સંપાદનોને ફરીથી કરવાની મંજૂરી પણ આપી શકે છે. આ સુવિધા ડેસ્કટોપ એપ્લિકેશન અને વેબ એપ્લિકેશન્સ માટે સમૃદ્ધ કાર્યક્ષમતા પ્રદાન કરી શકે છે. સાવચેતીની એક નોંધ એ છે કે ઉચ્ચ-વ્યવહાર વેબ-આધારિત એપ્લિકેશનો માટે ઓવરહેડને ધ્યાનમાં લેવી. એન-લેવલ પૂર્વવત્ કરવાની ક્ષમતાને સામાન્ય રીતે પ્રતિબિંબ દ્વારા એક્સેસ કરવામાં આવતી એપ્લિકેશનની અગાઉની સ્થિતિને સંગ્રહિત કરવાની જરૂર પડશે. ડેસ્કટોપ એપ્લિકેશન્સમાં આ સામાન્ય પ્રથા છે જ્યાં ફેરફારો "લાગુ" હોવા જોઈએ. વેબ આધારિત ડિઝાઇનમાં, ઉમેરાયેલ સંગ્રહ બિનજરૂરી ઓવરહેડ પેદા કરી શકે છે કારણ કે ફેરફારો સામાન્ય રીતે બેચમાં સબમિટ કરવામાં આવે છે અને તેને સમાન સ્તરની "પૂર્વવત્" ક્ષમતાની જરૂર હોતી નથી. વ્યાપાર નિયમ ટ્રેકિંગ વસ્તુઓને "તૂટેલા નિયમ" વસ્તુઓના સંગ્રહને જાળવવાની મંજૂરી આપે છે. જ્યાં સુધી ઓબ્જેક્ટ માન્ય સ્થિતિમાં ન હોય ત્યાં સુધી તૂટેલા નિયમો અસ્તિત્વમાં રહેશે, એટલે કે તે ડેટાબેઝમાં ટકી રહેવા માટે તૈયાર છે. બ્રોકન રૂલ ઓબ્જેક્ટ્સ સામાન્ય રીતે માન્યતા તર્ક સાથે સંકળાયેલા હોય છે જેમ કે ફોન નંબર ક્ષેત્રમાં કોઈ મૂળાક્ષર અક્ષરો દાખલ કરવામાં ન આવે તેની ખાતરી કરવી. ઉદાહરણ તરીકે, જો એકાઉન્ટ ઓબ્જેક્ટ પાસે ફોન નંબરની પ્રોપર્ટી હોય અને તે પ્રોપર્ટીને આલ્ફાબેટિક અક્ષરો સાથે ફોન નંબર સોંપવામાં આવે, તો એકાઉન્ટ ઓબ્જેક્ટની ISValid પ્રોપર્ટી ખોટી થઈ જશે (ડેટાબેઝમાં સાચવવાનું અશક્ય બનાવે છે) અને પછી એક નવો બ્રોકન રૂલ ઓબ્જેક્ટ બનાવવામાં આવશે અને એકાઉન્ટના બ્રોકન રૂલ્સ કલેક્શનને સોંપવામાં આવશે. જ્યારે અમાન્ય ફોન નંબર સુધારવામાં આવે ત્યારે નિયમ અદૃશ્ય થઈ જશે, જે એકાઉન્ટ ઓબ્જેક્ટને ડેટાબેઝમાં સાચવવા માટે સક્ષમ બનાવે છે. સી. એસ. એલ. એ. સિમ્પલ યુ. આઈ. બનાવટની વિસ્તૃત સુવિધાઓ સી. એસ. એલ. એ. ડોટ નેટનો ઉપયોગ કરીને બનાવવામાં આવેલી વ્યવસાયિક વસ્તુઓ વિન્ડોઝ રનટાઇમ (વિનઆરટી), ડબલ્યુ. પી. એફ., વેબ ફોર્મ્સ, <આઇ. ડી. 1> એમ. વી. સી., વિન્ડોઝ ફોન, સિલ્વરલાઇટ અને વિન્ડોઝ ફોર્મ્સ સહિત તમામ માઈક્રોસોફ્ટ ડોટ નેટ યુ. આઈ. તકનીકો માટે ડેટા બંધનને સંપૂર્ણપણે સમર્થન આપે છે. ડેટાગ્રિડ્સ અને લિસ્ટબોક્સ જેવા ડેટા-બાઉન્ડ નિયંત્રણો ADO.NET ડેટાસેટ્સ અને ડેટાબેલ્સ જેવા વધુ સામાન્યકૃત ડેટાબેઝ ઓબ્જેક્ટ્સને બદલે વ્યવસાયિક ઓબ્જેક્ટ્સ સાથે બંધાયેલા હોઈ શકે છે. ડિસ્ટ્રિબ્યુટેડ ડેટા એક્સેસ CSLA. NET માળખું WCF, વેબ સેવાઓ અથવા અન્ય તકનીકોનો ઉપયોગ કરીને વસ્તુઓને નેટવર્કની સીમાઓ પાર જવાની મંજૂરી આપવા માટે મોબાઇલ ઓબ્જેક્ટ્સ અથવા મોબાઇલ એજન્ટ્સ તરીકે ઓળખાતી વિભાવનાનો અમલ કરે છે. પરિણામે, ડેટા એક્સેસ સ્થાનની પારદર્શિતાનો આનંદ માણે છે, જેનો અર્થ છે કે તર્ક એપ્લિકેશનના રૂપરેખાંકનના આધારે ક્લાયન્ટ વર્કસ્ટેશન અથવા સર્વર પર ચાલી શકે છે. તેને મેન્યુઅલ ડેટાબેઝ વ્યવહારો અથવા વિતરિત બે તબક્કાના પ્રતિબદ્ધ વ્યવહારોનો ઉપયોગ કરવા માટે પણ ગોઠવી શકાય છે. ડેટા એક્સેસ તર્કને વ્યવસાયિક તર્કથી સ્પષ્ટ રીતે અલગ કરવામાં આવે છે, અને માઇક્રોસોફ્ટ. નેટ પ્લેટફોર્મ પર ઉપલબ્ધ કોઈપણ ડેટા એક્સેસ તકનીકનો ઉપયોગ કરીને અમલ કરી શકાય છે. ઉદાહરણોમાં ADO.NET એન્ટિટી ફ્રેમવર્ક, કાચા ADO.NET, nHibernate, વગેરેનો સમાવેશ થાય છે. વેબ સેવાઓ CSLA. NET માળખા સાથે બનાવેલ વ્યવસાયિક તર્કને દૂરસ્થ ગ્રાહકો માટે વેબ સેવા તરીકે સરળતાથી ખુલ્લી પાડી શકાય છે. આ વેબ API, WCF અને ASMX વેબ સેવાઓ જેવી સર્વર-સાઇડ માઈક્રોસોફ્ટ. NET તકનીકોનો ઉપયોગ કરીને કરી શકાય છે. સંદર્ભો તાલીમ CSLA.NET CSLA 4 ઇબુક શ્રેણીનો ઉપયોગ કરતા તાલીમ પુસ્તકો નિષ્ણાત C #2008 બિઝનેસ ઓબ્જેક્ટ્સ નિષ્ણાત VB 2008 બિઝનેસ ઓબ્જેક્ટ્સ CSLA નો ઉપયોગ કરતા. NET 3.0 CSLA. NET સંસ્કરણ 2.1 હેન્ડબુક નિષ્ણાત C #2005 બિઝનેસ ઓબ્જેક્ટ્સ નિષ્ણાત VB 2005 બિઝનેસ ઓબ્જેક્ટ્સ નિષ્ણાત C #બિઝનેસ ઓબ્જેક્ટ્સ નિષ્ણાત VB બિઝનેસ ઓબ્જેક્ટ્સ વિઝ્યુઅલ બેઝિક 6 ડિસ્ટ્રિબ્યુટેડ ઓબ્જેક્ટ્સ વિઝ્યુઅલ બેઝિક 6 બિઝનેસ ઓબ્જેક્ટ્સ વિઝ્યુઅલ બેઝિક 5 બિઝનેસ ઓબ્જેક્ટ્સ વેબ સાઇટ્સ CSLA. NET તાલીમ CSLA. NET હોમ પેજ CSLA. NET ગિટહબ CSLA. NET પર. NET સમુદાય મંચ બાહ્ય લિંક્સ રોકફોર્ડ લોટકાની વેબસાઇટ એપ્લિકેશન પ્રોગ્રામિંગ ઇન્ટરફેસ કમ્પોનન્ટ-આધારિત સોફ્ટવેર એન્જિનિયરિંગ C શાર્પ લાઇબ્રેરીઓ