Wikipediadan təsadüfi məlumatlar :
This article only references primary sources. (September 2025) |
An anti-pattern is a solution to a class of problem which may be commonly used but is likely to be ineffective or counterproductive.[1][2] The term, coined in 1995 by Andrew Koenig, was inspired by the book Design Patterns which highlights software development design patterns that its authors consider to be reliable and effective.[3] A paper in 1996 presented by Michael Ackroyd at the Object World West Conference described anti-patterns.[3] It was, however, the 1998 book AntiPatterns that both popularized the idea and extended its scope beyond the field of software design to include software architecture and project management.[3] Other authors have extended it further since to encompass environmental, organizational, and cultural anti-patterns.[4]
According to the authors of Design Patterns, there are two key aspects of an anti-pattern that distinguish it from a bad habit, bad practice, or bad idea. First, an anti-pattern is a commonly used process, structure or pattern of action that, despite initially appearing to be appropriate and effective, has more bad consequences than good ones. Second, another solution exists to the problem that the anti-pattern is attempting to address. This solution is documented, repeatable, and proven to be effective where the anti-pattern is not.
A guide to what is commonly used is a "rule-of-three" similar to that for patterns: to be an anti-pattern it must have been witnessed occurring at least three times.[5]
Documenting anti-patterns can be an effective way to analyze a problem space and to capture expert knowledge.[6] While some anti-pattern descriptions merely document the adverse consequences of the pattern, good anti-pattern documentation also provides an alternative, or a means to ameliorate the anti-pattern.[7]
Examples
[edit]In software engineering
[edit]In software engineering, anti-patterns include:[7]
- God object
- A single class handles all control in a program rather than control being distributed across multiple classes.
- Magic number
- A literal value with an important yet unexplained meaning which could be replaced with a named constant.
- Poltergeist
- Ephemeral controller classes that only exist to invoke other methods on classes.
- Big Ball of Mud
- A software system that lacks a perceivable architecture. Although undesirable from a software engineering point of view, such systems are common in practice due to business pressures, developer turnover and software entropy.
In project management
[edit]Project management anti-patterns included in the Antipatterns book include:[4]
- Blowhard Jamboree
- An excess of industry pundits
- Analysis paralysis
- Viewgraph Engineering
- Too much time spent making presentations and not enough on the actual software.
- Death by Planning
- Spending too much effort planning.
- Fear of Success
- Irrational fears near to project completion.
- The Corncob
- Difficulties with people.[vague]
- Intellectual Violence
- Intimidation through use of jargon or arcane technology
- Irrational Management
- Bad management habits.
- Smoke and Mirrors
- Excessive use of demos and prototypes by salespeople.
- Throw It Over the Wall
- Forcing fad software engineering practices onto developers without buy-in.
- Fire Drill
- Long periods of monotony punctuated by short crises.
- The Feud
- Conflicts between managers.
- e-mail Is Dangerous
- Situations resulting from ill-advised e-mail messages.
See also
[edit]- Capability Immaturity Model
- Code smell – Characteristic of source code that hints at a quality problem
- Dark pattern – Deceptive user interface designs
- Design smell – Term in computer programming
- ISO/IEC 29110: Software Life Cycle Profiles and Guidelines for Very Small Entities (VSEs)
- List of software anti-patterns
- List of software development philosophies
- List of tools for static code analysis
- Software Peter principle – Engineering term for a complex, failing project
- Software rot – Degradation or loss of the use of software over time
- The Innovator's Dilemma – 1997 book by Clayton M. Christensen
References
[edit]What supports what
[edit]- ^ Budgen 2003, p. 225.
- ^ Ambler 1998, p. 4.
- ^ a b c Neill, Laplante & DeFranco 2011, p. 4.
- ^ a b Neill, Laplante & DeFranco 2011, p. 5.
- ^ Neill, Laplante & DeFranco 2011, p. 6.
- ^ Jimenez 2006.
- ^ a b Demeyer 2008, p. 102.
Sources
[edit]- Neill, Colin J.; Laplante, Philip A.; DeFranco, Joanna F. (2011). Antipatterns: Managing Software Organizations and People. Applied Software Engineering Series (second ed.). CRC Press. ISBN 9781439862162.
- Budgen, D. (2003). Software design. Harlow, Eng.: Addison-Wesley. p. 225. ISBN 0-201-72219-4.
As described in Long (2001), design anti-patterns are 'obvious, but wrong, solutions to recurring problems'.
- Ambler, Scott W. (1998). Process patterns: building large-scale systems using object technology. Cambridge, UK: Cambridge University Press. p. 4. ISBN 0-521-64568-9.
...common approaches to solving recurring problems that prove to be ineffective. These approaches are called antipatterns.
- Jimenez, Edward (2006-04-24). "AntiPatterns". AntiPatterns. Retrieved 24 April 2006.
- Demeyer, Serge (2008). "ObjectOriented Reengineering". In Mens, Tom; Demeyer, Serge (eds.). Software Evolution. Springer Science + Business Media. ISBN 9783540764403.
Further reading
[edit]- Koenig, Andrew (March–April 1995). "Patterns and Antipatterns". Journal of Object-Oriented Programming. 8 (1): 46–48.
- Later re-printed in: Rising, Linda (1998). The patterns handbook: techniques, strategies, and applications. Cambridge, U.K.: Cambridge University Press. p. 387. ISBN 0-521-64818-1.
An antipattern is just like a pattern, except that instead of a solution it gives something that looks superficially like a solution, but isn't one.
- Later re-printed in: Rising, Linda (1998). The patterns handbook: techniques, strategies, and applications. Cambridge, U.K.: Cambridge University Press. p. 387. ISBN 0-521-64818-1.
- Laplante, Phillip A.; Neill, Colin J. (2005). Antipatterns: Identification, Refactoring and Management. Auerbach Publications. ISBN 0-8493-2994-9.
- Brown, William J.; Malveau, Raphael C.; McCormick, Hays W.; Thomas, Scott W. (2000). Hudson, Theresa Hudson (ed.). Anti-Patterns in Project Management. John Wiley & Sons. ISBN 0-471-36366-9.
- Stamelos, Ioannis (January 2010). "Software project management anti-patterns". Journal of Systems and Software. 83 (1): 52–59. doi:10.1016/j.jss.2009.09.016.
External links
[edit]
Media related to Anti-patterns at Wikimedia Commons
- Anti-pattern at WikiWikiWeb
Kommunal ödənişləri qeydiyyatsız və sürətli həyata keçirin
Kommunal.az onlayn ödənişi asanlaşdırır. Onlayn Ödə, Ödəniş tarixçənizi yadda saxlayın, Hesablarınızı avtomatik ödəyin, Kartdan karta pul köçürün
Bakıda kommunal xidmətləri onlayn ödəmək 💳 ödəniş işıq pulu ödənişi ⚡️ mənzil və kommunal xidmətlər 💰 kirayə 🔒 təhlükəsiz ✅ Azərbaycanda istənilən bank kartından 📞 * 1919 | EPUL
“ASAN Kommunal” mərkəzləri bazar ertəsi - cümə günləri saat 09:00-dan-18:00-dək, şənbə günü isə saat 10:00-17:00-dək nahar fasiləsi olmadan fəaliyyət göstərir. “ASAN Kommunal” mərkəzlərində sənədlərin qəbulu həftənin beş günü saat 09:00-dan 17:30-dək, şənbə günü isə saat 10:00-dan 16:30-dək fasiləsiz həyata keçirilir.
Azərbaycan Respublikası Prezidentinin 06 avqust 2008-ci il tarixli 2983 saylı sərəncamını həyata keçirmək məqsədi ilə Bakı şəhər İcra Hakimiyyəti Başçısı 02 fevral 2009-cu il tarixdə 45 saylı sərəncamla, Bakı şəhərinin inzibati ərazisində əmələ gəlmə mənbəyindən asılı olmayaraq, bütün bərk məişət tullantılarının daşınması və zərərsizləşdirilməsini Bakı şəhər İcra Hakimiyyəti Aparatı Mənzil Kommunal Təsərrüfatı Departamentinin İxtisaslaşdırılmış Sanitariya – Təmizlik və Kommunal Xidmətlər İdarəsinə həvalə etmişdir.
Hesab.az offers online payments for Mobile, Utilities, TV, Internet, Phone and many other services
Bank Ödənişləri - Online Kommunal Ödənişlər. İndi siz mobil, internet, sığorta, bank və kredit ödənişlərinizi asanlıqla online odeme formada edə bilərsiniz. Onlayn Odeme Sizə daha yaxın
Onlayn xidmətlər - Kredit, kommunal ödənişlər, eləcə də arayış və çıxarışların alınması. Banka gəlmədən Kapital Bankın online odeme xidmətindən banka gəlmədən yararlanın
Mobile operators · Bank Services · Insurance · Phone · Kommunal Services · Cable TV · Internet · Other · Entertainment.
Elektron pul kisəsinə saytdan və ya mobil proqram vasitəsilə daxil olun. "Kommunal ödənişlər" bölməsini seçin. Öz ödəniş kodunuzu və məbləği daxil edin.
Hökumət ödənişləri Bank xidmәtlәri Mobil operatorlar Telefon Kommunal xidmәtlәr İnternet TV Sığorta Təhsil Taksi və Çatdırılma Otellər və Turizm Әylәncә
Hökumət Ödəniş Portalı (HÖP) – ölkə iqtisadiyyatında nağdsız hesablaşmaların genişləndirilməsi və bütün regionlarda maliyyə xidmətlərinə çıxış imkanlarının artırılması məqsədilə Azərbaycan Respublikası Mərkəzi Bankı tərəfindən yaradılmışdır. Portal vasitəsilə mərkəzləşdirilmiş qaydada vergi, rüsum, icarə haqqı və digər büdcə ödənişlərinin, həmçinin kommunal, rabitə və başqa kütləvi xidmətlər üzrə ödənişlərin internet üzərindən ödəniş kartlarından, bank hesablarından istifadə edilməklə, həmçinin bankların və milli poçt operatorunun maliyyə xidməti nöqtələrində nağd qaydada toplanılması təmin edilmişdir.
Çoxfunksiyalı “ASAN ödəniş” sistemi cərimə, kommunal xidmət, kabel televiziyası, mobil operator, internet və digər ödənişləri qısa zamanda, təhlükəsiz və rahat şəkildə həyata keçirmək imkanı yaradır. Respublika daxilində geniş ərazini əhatə edən “ASAN Ödəniş” terminalları, həmçinin www.asanpay.az portalı və “ASAN Pay” mobil əlavəsi vasitəsilə istənilən xidmət üzrə heç bir məhdudiyyəti olmadan 24/7 ödəniş etmək mümkündür.
Bütün xidmətlər bir Ödəmə Nöqtəsində! Qeydiyyatdan keçərək istənilən xidmətlər üzrə ödəniş edin və bonus qazanın.
Portmanat.az - elektron pulqabı, onlayn ödəmə,kommunal ödənişlər, mobil ödəmə, hesab ödənişləri, tv ödənişləri, internet ödəmə
Son illərdə həyatımıza daxil olan elektron xidmətlərdən biri də elektron ödəniş sistemləridir. Bu ödəniş sistemləri malların, iş və xidmətlərin dəyərinin ödənilməsi, öz hesabından digər şəxsin hesabına pul vəsaitinin köçürülməsi üçün istifadə edilən ödəniş alətidir.
Bütün kommunal, mobil, elektron imza, dövlət, internet, sığorta, bank, Naxçıvan və digər ödənişlərini Smartpay üzərindən et
